We were able to reproduce the issue on one of the staging environments offered by a customer whose site was exhibiting the issue.
What we’ve found so far is that there are some cases where on a single page load, both Gutenberg and the TinyMCE editor may be loaded. I have code in this plugin that makes the new Icon Chooser available whether you’re in one editor or the other. But I hadn’t expected to be in a situation where both were active on the same page load. In that staging environment, we were able to resolve the issue by simply disabling the TinyMCE compatibility code–then Gutenberg works fine on that page, and the Icon Chooser integration works fine with it.
So that’s definitely A problem for which I’m working on a fix now. It only applies on page loads where both editors are trying to be loaded at the same time. So it wouldn’t just be when Theme Foo is active. Or even just when using Theme Foo and editing a page or post. It would be when you’re editing on some specific kind of page or post that happens to involve both editors, because either Theme Foo is including them both on the same page, or when you’ve got some other plugin–maybe WooCommerce where you’re editing products, maybe an LMS where you’re editing a course lesson–it’s on those specific pages where this problem occurs.
One way you could tell whether this is an issue that applies to you:
- go to a page where the problem manifests (where the Gutenberg block editor is not showing up where it should be)
- open your browser Web Console, aka JavaScript console
- at the prompt, type
window.tinymce
This just checks to see whether that tinymce
global variable is set.
If you see “undefined”, that means it is not set and that TinyMCE is probably not loaded on that page. In that case, then you’re experiencing a different kind of problem, and it would be helpful for me to know about it.
If the tinymce
global is set, you’ll see some code-looking stuff, like:
Object { ... }
In that case, then your problem is almost certainly the one that I’m working on fixing now.