Hi, I stopped using Pinegrow since WP switched to Gutemberg because of too many incompatibility problems (for example the impossibility to set ‘show_in_rest’ => true in Register Taxonomy, absolutely necessary for Gutemberg), because of the lack of important features (for example the lack of an action to add a simple ‘require_once’ or other custom code in funcions.php) and some bugs (for example the error that is generated by setting ‘set_post_thumbnail_size’ together with other custom image sizes). All these problems forced me to review the functions.php file every time I made a change and it was quite nerve-wracking. I would like to know if some problems have finally been solved before buying it again. Thanks
I don’t know about the rest of them but I know for a fact that the “show in rest” option as been added (quite a while ago actually) in the “register post type” wordpress action. I know that bevause I’ve used it.
in register post_type I also remember that there was but in register taxomomy it was missing. if it is not yet there, try to register a taxonomy yourself and try it with Gutenberg, you will see that there is no way to assign the taxonomy to the post
@NKCom, I just added the show_in_rest = true parameter to all Register Taxonomy calls. The update will be out some time this week.
You can add any custom code you want to functions.php (like require_once etc). Just don’t add anything inside the Pinegrow Generated sections.
Defining image sizes can now be done in WordPress -> Theme Settings.
The set_post_thumbnail_size is also fixed. This bug is quite embarrassing, not sure how it sneaked past us.
I’ve downloaded the new release now and I’m testing it in trials. I confirm that the bug is gone and now it is finally possible to go back to creating taxonomies without having to manually intervene on the functions.php file.
About adding custom code outside the Pinegrow generated sections is what we normally do but there’s another underlying problem you probably haven’t considered. I’ll give you an example concerning field work, at least according to the production method of the agency I manage. Try to identify with it:
We have created a series of widgets and many other customizations (hooks) that we use frequently according to the needs of each individual job for each client. Everything we needed was added at the end of the functions.php file and we modified it according to the individual situation. We show the client a first demo, he changes his mind about certain things and then we modify post_type, taxonomies, templates and consequently image size. At this point the functions.php file can be regenerated and all the added code disappears… The first time was a panic!
Our typical customer changes his mind even 3 or 4 times before reaching the final solution.
We learned how to create an external file with all the hooks of the case and then simply add a require_once at the end of the functions.php file, at least at each regeneration of the php file the only thing to add is that simple require_once, but it would be nice not to have to do that either, that is, you can not create an action that allows us to add for example either personal code or at least just that require_once to link the file with custom code so that at each regeneration of the functions.php file is already included the link avoiding having to intervene manually?
That would be great!
Sergio, thanks for the detailed explanation!
I think the simplest and most flexible approach would be to always require_once a file named custom_functions.php (or similar name), if it is present in the theme.
PG could also auto-generate such empty file and it would become a recommended way for adding custom code instead of editing functions.php directly.
Would that work?
That would be great!
If you ask me, as a matter of habit I would opt for inc/custom.php but clearly any other option is welcome. It would solve a big inconvenience.
PS: While I’m at it, I suggest that it is automatically exported whenever a change is detected.
We implemented this feature, it will be out soon.
inc/custom.php is now always included in functions.php. The file is created if it doesn’t exist and is exported every time the Export whole theme is done.