A likely reason you are not able to see the change in the preview is that your coming-soon.php
template doesn’t include the requisite wp_head()
an wp_footer()
calls being made. If you look at your browser’s DOM, you should actually see that a secondary iframe
is getting created behind the visible iframe
. However, if your template doesn’t include the standard theme hooks then the customize-preview.js
script won’t be enqueued and it won’t be able to communicate to the parent window that the iframe
has loaded and thus is ready to replace the previous iframe
.
This same question was actually reported to WP Core Trac in #37981: “template_include not working in customizer previewer” in which I answered similarly:
you have to make sure that the
wp_head()
andwp_footer()
calls are made so that scripts are printed. Ifcustomize-preview.js
isn’t output, then the loaded page won’t be able to communicate to the parent frame that the page has finished loading. This issue actually came up recently elsewhere: https://github.com/Automattic/amp-wp/issues/477#issuecomment-247679386