## [3.2.1] - 2019-11-14
* Accessibility: Prevent screenreader text such as “interim pages omitted” from appearing in paginated navigation for themes that have not added Genesis accessibility support.
* Tooling: Allow PHP short array and ternary syntax.
## [3.2.0] - 2019-11-13
* Feature: Open Graph Tag support (off by default, disabled if select plugins are outputting OG tags).
* Feature: Ability to disable footer widgets on single entries.
* Feature: Lazy load images in Chrome 76+ (off by default, enabled with `genesis-lazy-load-images` theme support).
* Feature: Modify entry meta output via Theme Settings in customizer.
* Admin: Theme Setup CSS tweak
* Filter: Added `genesis_amp_menu_css` filter for AMP inline styles for control over the output.
* Accessibility: Added aria labels, screen reader text to numeric entry navigation.
* `genesis_markup()` now accepts `atts` to add attributes to markup at the point of use.
## [3.1.3] - 2019-11-06
* Ensure unchecked checkboxes in the Genesis editor sidebar save correctly with WordPress 5.3.
* Prevent a warning during One-click Theme Setup under WordPress 5.3.
* Display comment reply forms directly below the comment instead of after nested responses.
* Remove empty entry-meta wrappers if post info or meta is removed via a filter.
* Prevent a fatal error that could occur when visiting the Customizer if the `genesis_footer_output` filter was used with more than one argument.
* Make sure that the `[footer_childtheme_link]` shortcode renders if the Theme URI stylesheet header is missing but the theme declares a `CHILD_THEME_URL`.
* Correct the deprecation message for `genesis_attributes_nav`.
## [3.1.2] - 2019-09-05
* Prevent the block editor and Genesis sidebar failing to load if a custom post type supports `genesis-layouts` but not `custom-fields`.
* Find '© 2019' in stored footer text and replace it with the `[footer_copyright]` shortcode during the Genesis update process. This is designed to ensure that the copyright year in footer text updates in future years.
## [3.1.1] - 2019-08-29
* Add a new genesis-breadcrumbs-visible body class if breadcrumbs are visible on a page.
* Add new genesis-singular-image-visible body class to allow styling of pages if a featured image appears on them.
* Add the genesis-breadcrumbs-hidden body class if breadcrumbs are disabled for the current page type. (Previously this was only applied if breadcrumbs were active but hidden using “hide breadcrumbs”.)
* Hide Custom Classes panel in the Genesis sidebar if the current post type is not public.
* Do not emit genesis-singular-image-hidden body class if unsupported by current post type.
* Hide Breadcrumbs panel in the new Genesis editor sidebar if a theme opts to disable support for Genesis breadcrumbs.
* Hide Genesis sidebar if no panels will display.
* Fix an issue where heading levels would change for static homepages on sites using SEO plugins.
* Fix an issue where changes to Genesis sidebar settings would fail to save if the Easy Digital Downloads plugin was in use.
* Prevent the Genesis sidebar from appearing on posts that do not support custom-fields.
## [3.1.0] - 2019-08-21
Requires WordPress 5.0+ and PHP 5.6+.
* Theme support: Add `genesis-custom-logo` theme support for logo output. This enables logo upload in the Site Identity section, outputs a logo, and improves accessibility of the site title.
* Customizer: Add a footer text option under Theme Settings -> Footer.
* Customizer: Add new Singular Content section to hold settings specific to posts, pages and other post types.
* Editor: Add a new Genesis sidebar for sites that use the block editor.
* Editor: Add a “hide breadcrumbs” checkbox to the Genesis sidebar in the block editor.
* Editor: Add a “hide title” checkbox to the Genesis sidebar in the block editor.
* Editor: Add a “hide featured image” checkbox to the Genesis sidebar in the block editor.
* Editor: Add status info to the Breadcrumbs panel to show global status of breadcrumbs for the current post type (requires the `edit-theme-options` capability and `genesis-breadcrumbs-toggle` post type support).
* Editor: Add status info to the Images panel to show global status of featured images for the current post type (requires the `edit-theme-options` capability and `genesis-singular-images` post type support).
* Editor: Add link to the Breadcrumbs panel to toggle breadcrumbs on and off globally for the current post type (requires the `edit-theme-options` capability and `genesis-breadcrumbs-toggle` post type support).
* Editor: Add link to the Images panel to toggle featured images on and off globally for the current post type (requires the `edit-theme-options` capability and `genesis-singular-images` post type support).
* Schema: Suppress output of Genesis schema if Yoast SEO is outputting JSON-LD markup.
* Schema: developers can disable schema with `add_filter( 'genesis_disable_microdata', '__return_true' );`.
* Post type support: Add `genesis-singular-images` post type support to enable output of featured images, and a related output setting in the new Singular Content Customizer panel.
* Post type support: Add `genesis-breadcrumbs-toggle` post type support to control which post types support the “hide breadcrumbs” checkbox.
* Post type support: Add `genesis-title-toggle` post type support to control which post types support the “hide title” checkbox.
* CSS: Add 'genesis-title-hidden' body class if the “hide title” checkbox is enabled.
* Theme setup: add option to import widgets during one-click theme setup. See Genesis Sample's `onboarding.php` for an up-to-date usage example.
* Theme setup: Add Starter Packs feature. Theme developers can now offer users a choice of content and plugin packs during theme setup. See Genesis Sample's `onboarding.php` for an up-to-date usage example.
* Theme setup: Add Child Theme Setup menu item to the Genesis admin menu to make finding the Getting Started page again easier for active themes that support one-click theme setup.
* REST API: Genesis now exposes hide title and hide breadcrumbs state, page layout, and custom body and post class via the `meta` field in the `posts` endpoint: `/wp-json/wp/v2/posts/[id]`
* REST API: Genesis now exposes supported layouts for the active theme via a new `layouts` endpoint: `/wp-json/genesis/v1/layouts/site`.
* Tooling: use the `@wordpress/scripts` package to build ES2015+ and React code.
* SEO: Remove `noodp` and `noydir` settings. The Yahoo! Directory (the `ydir` in `noydir`) closed in 2014. The Open Directory Project (the `odp` in `noodp`) closed in 2017. Related settings are also removed from the database during upgrade.
* Deprecation: The `genesis_footer_creds_text` filter is now deprecated. Developers can point users who want to edit their footer text to the new Genesis footer setting in the Customizer. If you want to set default footer text for your child theme during theme activation, you should set the `footer_text key` in your theme’s `child-theme-settings.php` file.
* Tooling: remove the `phpcs-fixed` command. Genesis now runs `phpcs` against all files instead of a subset of known-good files.
* Code: Switch to PHP short array syntax and enforce this via `phpcs.xml.dist`.
* Translation: Remove HTML from translated strings where possible.
* Documentation: Add link to the Genesis developer documentation site to the readme.
* Theme setup: create new menus during one-click theme setup instead of appending menu items to existing menus.
* SEO: The Genesis SEO “Primary Title H1” setting will now apply on static homepages.
* Accessibility: Change skip link text from “Skip to content” to “Skip to main content” to improve pronunciation of “content” by screen readers.
* Standards: Remove an unneeded argument when calling `genesis_onboarding_import_content()`.
* Standards: Address all PHP_CodeSniffer coding standards violations.
* Standards: Fix a warning that could appear during update if Genesis Simple Sidebars was in use.
* Tooling: Correct an issue where PHP_CodeSniffer extensions for VS Code and Atom users would fail to run.
* Translation: Correct missing translators comments and correct numbered placeholders.
* Translation: Fix translators comments that differed for the same string.
* Breadcrumbs: Ensure “Breadcrumbs on Homepage” enables breadcrumbs on static homepages. Previously “Breadcrumbs on Pages” also had to be checked.
* General: `genesis_get_global_post_type_name()` will now return the correct post type if the main query has been filtered to show additional post types.
## [3.0.3] - 2019-08-05
* Ensure that default settings get inserted on theme activation
## [3.0.2] = 2019-07-03
* Fixed instances of late escaping that were too aggressive.
* Fixed an issue encountered by the AMP plugin where the use of `uniqid()` breaks the post-processor.
## [3.0.1] - 2019-06-20
* Restored `404.php`.
* Restored `page.php`.
* Restored `search.php`.
* Restored `single.php`.
* Removed language files from core while we work on reliability standards.
* Fixed issue where certain child theme styles fail to load. `CHILD_THEME_NAME` is now used (if available) when returning a theme handle (used when enqueueing CSS).
## [3.0.0] - 2019-06-19
* Added AMP support if the WordPress AMP plugin is installed and active (https://wordpress.org/plugins/amp/). This includes an AMP-compatible, responsive menu that theme developers can add via `genesis_register_responsive_menus()`, in place of having to enqueue their own responsive menu scripts.
* Added `genesis_get_theme_handle()` function that returns a formatted theme handle, via the theme name in `style.css`, for use in places where a string of words (lowercase, separated by dashes) is needed.
* Added `genesis_get_theme_version()` function to return the version string from the stylesheet header, or the current Unix time if the `SCRIPT_DEBUG` constant is true. This is helpful as a cache-busting string when enqueueing assets, so that you no longer need to add a `CHILD_THEME_VERSION` constant to your `functions.php` that duplicates information in your stylesheet header.
* Added memoization to `genesis_get_theme_handle()` and `genesis_get_theme_version()` so multiple uses of these functions won't negatively affect performance.
* Added ability to use the `query_args` custom field to trigger a custom loop in pages (like the old `page_blog.php` used to do).
* Added db upgrade functions that provide for backward compatibility for sites using the `page_blog.php` and `page_archive.php` page templates.
* Added Genesis information to the WordPress Site Health admin page.
* Removed Theme and SEO Settings page content. Customizer is now the canonical location for configuring these settings.
* Removed support for all non-html5 output.
* Removed `404.php` template.
* Removed `page.php` template.
* Removed `page_archive.php` template.
* Removed `page_blog.php` template.
* Removed `search.php` template.
* Removed `single.php` template.
* Removed Adsense Auto Ads integration, with limited backward compatibility.
* Removed integration with Google Plus.
* Removed all styles from `style.css`.
* Removed all functions deprecated prior to Genesis 2.0.0.
* Removed compatibility with old and unknown breadcrumb plugins/functions.
* Removed unused `$backtotop` variable and filter from footer output function.
* Deprecated the `genesis_nav_right()` callback function.
* Output the responsive viewport meta tag by default.
* Fixed all known instances of content being output without any escaping or sanitization.
* Fixed bug where an empty paragraph was output in the archive intro text.
* Fixed bug in comments where certain markup was appearing out of order.
* Fixed issue where the Genesis Plugins link was showing for people who did not have permission to install plugins.
- Added menu support to onboarding process.
- Added featured image support to onboarding process.
- Added support for assigning static Posts page to onboarding process.
- Added post excerpt support to onboarding process.
- Added dynamic support for child theme constants.
- Added support for importing specified settings on theme activation via a config file.
- Added functions to get, set, and delete settings that eventually expire.
- Improved the onboarding process for screen readers.
- Update Superfish to 1.7.10.
- Changed references of "Front Page" to "Homepage" where appropriate.
- Use the post type's label as linked text in the metabox on CPT archive settings.
- Changed the Genesis update storage to an expiring setting rather than a transient.
2.8.1 - 2019-01-30 #
- Removed several Grunt dev tools and replaced with node scripts.
- Removed sitemap from 404 template (performance and security).
2.8.0 - 2019-01-16 #
- Fixed genesis_human_time_diff() to display accurate relative dates.
- Fixed a problem with aria-hidden and tabindex attributes were being escaped, causing the quotes to be unintentionally encoded.
- Add a genesis_get_config() function, to locate and load config files from Genesis and a child theme.
- Add a new "onboarding" feature that allows users to import homepage demo content in WordPress 5.0.
- Add a new function that allows you to get an author box by specified user.
2.7.3 - 2018-12-19 #
- Improved/clarified the labels on settings/customizer pages.
- Changed references of "- None -" to "None" in forms, for better accessibility.
2.7.2 - 2018-12-13 #
- Fixed an issue with the search form, where some elements were missing attributes, or had the wrong attributes.
2.7.1 - 2018-11-15 #
- Fixed issue with schema on the breadcrumbs wrapper by removing breadcrumb div schema.org attributes when not needed, use RDFa for Breadcrumb NavXT.
- Fixed issue with the search form not properly outputting a label when a11y is enabled.
2.7.0 - 2018-11-14 #
- Fixed issue with filtered content being passed to wp_kses_post().
- Fixed issue with the genesis_search_form() function returning nothing if used directly.
- Added soft PHP 5.3 requirement, with admin messaging.
- Added meta tag for breadcrumb position.
- Added ability to export or remove private data via the WordPress privacy tools.
- Added ability to autoload namespaced classes.
- Added genesis_is_amp() utility function for detecting when the request is an AMP URL.
- Added minimum-scale to the viewport meta tag when the request is an AMP URL.
- Added a genesis_more_text filter.
- Added a /docs folder for housing Genesis documentation.
- Added individual changelog files for each release.
- Added SEO support for SEOPress.
- Added Genesis version to the "At a Glance" dashboard widget.
- Added rel="noopener noreferrer" to new window links.
- Added aria-current to pagination for accessibility.
- Use Semantic Versioning for all future releases.
- Use config file for breadcrumb arguments.
- Use Markup API to build breadcrumb links.
- Redirect to the "What's New" page on all upgrades, not just "major" ones.
- Change the license line in all file headers to "GPL-2.0-or-later".
- Use wp_strip_all_tags() instead of strip_tags().
- Replace all references to "Copyblogger" with "StudioPress".
- Refresh .editorconfig.
- Use Markup API for opening and closing entry-content tags.
- Clear cache at the end of an upgrade.
- Fixed various code standards violations.
- Fixed various missing or incorrect inline documentation.
- Fixed issue where avatars were fetched even when the size to fetch is 0.
- Fixed issue where genesis_update_action_links() was not returning an array.
- Fixed potential null pointer exceptions.
- Fixed misuses of mb_strlen().
- Fixed Tiago Hillebrandt's Twitter link.
- Deprecated genesis_is_major_version().
- Deprecated third arg in genesis_structural_wrap(), intended as a return function.
- Removed direct file access block from comments.php.
- Removed an unused variable assignment in the entry content output function.
- Removed a duplicate description from composer.json.
- Removed tab stop on aria-hidden featured images.
- Remove all references to "Scribe".