• I have used pods extensively for several years, and consider it to be one of the most important WordPress plugins. It is reminiscent of CCK for Drupal, and is hugely helpful in making sophisticated, maintainable sites.

    If you’re an end user who needs out of the box functionality, more specific plugins are probably the way to go. But if you’re a developer making none-trivial sites, Pods can be a huge asset.

    Pods helps me as a developer to break down the site in to different types of content, and give the site admins the ability to input and maintain their own data easily. I can keep the html and css cleanly separated from the content, so the user never has to worry about it.

    It’s then possible to change how and where content is used, without having to go back through the whole site. We can also extend existing WordPress structures – adding some extra fields to a user profile for example, or a post.

    For developers making custom sites, Pods can let you replace a raft of other plugins. Where you would otherwise have a plugin for many different functions – each with their own peculiarities – now you can simply create a structure in pods, and write some code to display that content. You’re not constrained by someone else’s implementation, and nor is your site bloated by features you don’t need. If you want an audio clip with a geolocation – that’s a couple of fields. Want an image with it? Add another field. Don’t want a description field or tags? Don’t add them. You create the whole thing, but it’s a fraction of the development effort that it would be doing it from scratch.

    Pods is not perfect by any means – I have had plenty of frustrating moments. Often it seems to pull huge data structures when I just want the bare minimum, etc. But the pros massively outweigh the cons.

Viewing 3 replies - 1 through 3 (of 3 total)
  • Plugin Author Scott Kingsley Clark

    (@sc0ttkclark)

    Thanks for the review James! We’re doing some great stuff in Pods 3.0 that I hope will ease some of your pain points.

    Do you have any feedback for us on things we can do better, like specific issues with the huge data structures you weren’t expecting?

    Also, is there anything we can add that would make your life easier when developing?

    Thread Starter _JamesW

    (@_jamesw)

    I think for me the system for retrieving records would be the main thing.
    The notation for field names for example, is tied to the underlying data structures and storage methods. So it’s quite easy to have problems in a lookup that aren’t immediately apparent. I know it’s a very difficult thing to have arbitrary data structures stored in multiple different ways, yet present a universal structure for querying them – but it would be nice 🙂

    Right now it seems like I get back way more information that I need (with sql I would literally get one field value, with pods I get every piece of metadata about every field) – but not quite enough information to simplify the query (if it’s going to look up all that metadata anyway, why does it need me to be explicit about how each field is stored?).

    Hope that makes sense! None of the issues I have with pods ever stop me from accomplishing what I set out to do – it always does the job. And I’ve certainly had similar issues with other similar systems like CCK. But there’s always something!

    Plugin Author Scott Kingsley Clark

    (@sc0ttkclark)

    Have you tried using the ‘select’ parameter in find() yet? http://pods.io/docs/code/pods/find/

    It can *really* optimize and speed up queries when you select exactly what you want, and only that, nothing extra. It gets even better when you select data traversed from relationships so that there aren’t any other queries needed on the page to get that information too.

    Also, the notation can be found at the bottom of find() too, http://pods.io/docs/code/pods/find/ and it’s specific based on the object type you are working with.

    For every case, all primary tables are prefixed with “t.”, all extra tables are “d.”, and for any meta-based values are affixed with “.meta_value”. Relationships can be traversed like “my_related_field_name.another_field.name”.

Viewing 3 replies - 1 through 3 (of 3 total)
  • The topic ‘Perhaps the best WordPress plugin’ is closed to new replies.