Thesis 2.4 Changelog

Release date: July 27, 2017

If you upgraded to Thesis 2.4 and have Custom CSS… You should run the Fix CSS Box on your Custom CSS.

If you are a Skin author… Due to improvements in Thesis’ data handling, you should run the Fix CSS Box on the [1] Skin CSS and [2] Editor CSS, and then [3] create a new default.php file for your Skins (this happens automatically when you create a Skin .zip file).

  • Informative [saving…/response] feedback throughout the Thesis UI whenever green Save buttons are clicked. No more wondering what’s going on after hitting Save!
  • Overhauled Skin Data Manager and added automatic backup capabilities to restorations, imports, and even Skin updates
  • Skin CSS, Editor CSS, and CSS Variables will update automatically and a new CSS file will be written whenever a Skin updates (an automatic backup is created before this process, too)
  • Consolidated the way Thesis writes CSS files: Design options are applied to the current CSS variables, and then a CSS file is created using the resulting updated variables
  • System Status now includes a last-modified time for the Skin CSS file
  • All-new escaping/formatting methods in the Thesis API ensure even greater security along with more consistent typographical output and character handling (apostrophes, quotes, allowable HTML tags, etc)
  • Added changelog link capability to Skins and Boxes
  • Added embed and autoembed capability to Text Boxes (for things like effortless YouTube integration)
  • Site Title Box can have its link suppressed via new boolean filter thesis_site_title_link
  • Added thesis_template filter that is essentially an analog for the WordPress template_include filter
  • Added a new thesis_css_editor filter to distinguish between Skin CSS (thesis_css) and Editor CSS when files are written
  • Changelog link on Thesis Home Screen
  • Modified template launch sequence should now work with all Plugins that perform template replacement via the template_include filter
  • Enhanced WooCommerce support for product image galleries
  • Added Order Tracking page to WooCommerce support
  • Turned off Thesis’ WooCommerce style and script optimization by default (it can be turned on with a simple boolean filter, thesis_woocommerce_optimized)
  • Changed admin_menu timing for the WordPress Dashboard menu to avoid potential conflicts with Plugins
  • Massive simplification in data I/O handling. User data is no longer escaped or “magic quoted,” and application of stripslashes() and stripslashes_deep() to form input data is now uniform and efficient throughout Thesis.
  • Alphabetized the Thesis Admin → Boxes submenu
  • Updated the Thesis CSS reset to address the way browsers are now handling abbr and acronym tags (unsightly dashed borders are now removed by default)
  • Fixed Delete Skin functionality on the Manage Skins page
  • Documentation links for Skins and Boxes will now display immediately after items are uploaded
  • Updated add_media element of the Thesis Form API for improved output
  • Changed Text Box input field description to indicate that JS is allowed for admins and super admins
  • Excerpt Box “read more” text now pulls from post meta (if it exists) and then falls back on the Box default
  • Rearranged General API Boxes so now only 3rd party services (like Google Analytics) are incorporated in this manner
  • Moved front-end actions in WordPress to the wp_loaded hook, which occurs late enough to allow any add-on components to do their thing without issue
  • Added new thesis_skin_memory_limit filter to allow for easy overrides on sites that need to adjust this value
  • Automatic updates will now work on a wider array of staging servers
  • Moved Box HTML attribute option sanitization method sanitize_html_attributes() to the General API
  • Added current_user_can('unfiltered_html') check to all textarea input values. If the user is not allowed to input unfiltered HTML, then the wp_kses_post filter is applied to the input before the value is stored in the database.
  • The Thesis Template object’s get_template() method now uses the native WordPress get_option() function to access the page_on_front
  • Removed Prototype and Scriptaculous from default scripts that can be optionally included via template options (these can be restored via filter)