I am working on auditing a WordPress website – find out how it is currently set up and what improvements can be made. I noticed that the ‘podcasts’, ‘courses’ and ‘Directory’, are not created as normal WP posts, but are separated on the left hand nav (with a plugin?). I don’t know a lot about custom fields, but I am wondering if this has been set up with them. When viewing these pages, they are not editable with Elementor. Any idea why the original developers would do this?
The site is live, so I can’t try much. In redeveloping it, I think the better option would to be to group these all as usual WP posts and display them on different pages via categories.
2
Answers
1. REASON FOR HAVING INDEPENDENT CUSTOM POST TYPES INSTEAD OF POSTING EVERYTHING WITH REGULAR WP POST
Based on your explanation, ‘podcasts’, ‘courses’ and ‘Directory’ are definitely custom post types (custom fields and custom post types are different). The reason for creating independent post types for these pages is so that you have more control over the post query. example: say for instance you create a post grid on Elementor but you only want to display podcasts then this is much easier achievable. It is of course true that you can have the same level of control if you create regular posts (WP core) and then separating ‘podcasts’, ‘courses’ and ‘Directory’ by adding them as a category and controlling them that way, but if ‘podcasts’, ‘courses’ and ‘Directory’ posts needs to have their own categories and tags then having them as independent post types adds that extra level of control.
2. HOW TO EDIT CUSTOM POST TYPES WITH ELEMENTOR
You mentioned that ‘podcasts’, ‘courses’ and ‘Directory’ is not editable with elementor, I assume that you tried to click on the "Edit with elementor" button and it’s not clickable, the reason for this is most likely that the content is being dynamically pulled from a template with the display condition set to Posts = ‘podcasts’, ‘courses’ and ‘Directory’ respectively. the best way to locate the template that’s being used for a specific page like the above is, while on the page hover over "edit with elementor" you’ll see templates appear in the dropdown like ‘header’, ‘footer’ amongst more, on the right hand side of the dropdown you’ll see the template type, look for the one that says "Single Post" clicking on that will allow you to edit the page for all single posts of that particular display condition.
It sounds like this website is using some kind of custom post type plugin – most likely Advanced Custom Fields (ACF). This can be checked by going to the plugins page.
These kinds of plugins allow you to make new posts, with the main function being that you can add custom fields to these custom posts.
If you try to ‘add new’ to the regular posts page, you are presented with a section to add a title, and a single section to add your post content.
As for custom posts (with custom fields), the developer can completely customise this ‘add new’ experience. For example, if you try to ‘add new’ under your Directory tab, there might be options for:
And so on. From there, in Elementor you can set up unique ‘Single Post’ templates for each post type, where you can display each custom field in a unique place on the page using Dynamic Tags.
This is why you can’t edit the individual posts in Elementor. You have to edit the ‘Single Post’ template (found under Templates > Theme Builder). Yes this could also be done by separating each post type by categories, but then you lose all functionality of the custom fields. Doing it this way is also more user friendly on the back end.
Assuming your custom posts have custom fields, you absolutely should not move them all to regular posts and separate them by category, as this will delete all the custom field data. If you are ‘auditing’ this site and don’t know about ACF, Dynamic Tags or Single Post templates, I highly recommend watching some YouTube videos at the bare minimum, as these are very standard parts of developing WordPress/Elementor sites.