Go to file
Andrew Nacin b9cb349dc0 No-JavaScript and no-Customizer support for the new Themes screen.
JavaScript is rarely disabled, but graceful degradation is still important. For example, syntax errors can occur, usually with major WP updates that overhaul entire experiences and update external libraries combined with themes or plugins doing weird or old things. If this error is due to their current theme, a user needs to be able to access the themes screen to switch away from the theme. A more subtle issue could make things painful to diagnose.

This commit renders the grid in PHP (the template is duplicated, but it lightweight, fairly mundane, and easy to sync). On Backbone render, the grid is then re-rendered from JavaScript so searches can occur. Customize and Live Preview is disabled if JS fails to kick in. If JS is disabled, old-school "Preview" links are displayed.

No-Customizer support: The customizer is only supported when the browser supports postMessage (IE8+), and if the frontend is a different domain, CORS (IE10+). We use the .hide-if-no-customize class for this. Pre-customize "Preview" links should use .hide-if-customize.

The .load-customize class should be used to declare a link that opens the customizer. This enables customize-loader.js to intercept this link and load the customizer on top of the current window, making for a smoother experience.

fixes #25964.


git-svn-id: https://develop.svn.wordpress.org/trunk@26726 602fd350-edb4-49c9-b593-d223f7449a82
2013-12-06 16:10:25 +00:00
src No-JavaScript and no-Customizer support for the new Themes screen. 2013-12-06 16:10:25 +00:00
tests Unit Tests: Avoid using mime_content_type() as it fails miserably in PHP 5.2. 2013-12-05 23:36:50 +00:00
tools/i18n Extract: rename method extract_entries to extract_from_code 2013-10-26 00:54:27 +00:00
.gitignore Add more .gitignore entries for unit test files. 2013-12-03 18:48:58 +00:00
.jshintrc Remove smarttabs from .jshintrc per IRC discussion. see #25187. 2013-11-13 19:23:16 +00:00
.travis.yml Add a Travis CI configuration file. 2013-12-02 19:41:26 +00:00
Gruntfile.js Define globals and add semicolons to wp-fullscreen.js. 2013-12-05 16:04:59 +00:00
package.json Temporarily switch to a pinned version of grunt-cssjanus. This in turn temporarily pins cssjanus to a patched fork. 2013-12-04 16:38:38 +00:00
phpunit.xml.dist Move PHPUnit tests into a tests/phpunit directory. 2013-08-29 18:39:34 +00:00
wp-config-sample.php Move wp-config-sample.php to the root of develop.svn. 2013-08-29 20:45:17 +00:00
wp-tests-config-sample.php Update wp-tests-config-sample.php to run with WP_DEBUG by default. see #25282. 2013-09-23 16:17:59 +00:00