Repository navigation
Conversation
Updating an existing site replaced its header and footer, because both patterns were rewritten under their existing slugs while the template parts only reference those slugs. Saved parts that contain nothing but a wp:pattern reference re-resolve to the new markup, so preserving the database record did not preserve the layout. Restore patterns/header.php and patterns/footer.php to their 3.1.0 markup, and ship the native-identity chrome as the new header-minimal and footer-minimal patterns. Give the minimal header's navigation an explicit page-list fallback so it no longer resolves to an unrelated saved menu, and lay that header out nowrap so WooCommerce's account and mini-cart icons stay on the logo row. Stop underlining button-shaped links inside post content, which also underlined WooCommerce's Proceed to Checkout button, and correct the migration note on database-saved template parts. Covers FX-01 to FX-05 from the 3.2.1 upgrade QA.
Split each WOFF2 into a Latin subset and an extended subset declared with unicodeRange in theme.json, so Latin pages download Inter at 24.6 KB instead of 97 KB and Sora at ~16 KB instead of ~23 KB per weight. Full WOFF2/TTF files are kept for direct references. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
The parent style.css only carries the theme header, so enqueueing it added an empty render-blocking stylesheet request to every page. Keep the flexia-style handle (so inline styles and dependants keep working) but give it a source only when a child theme's stylesheet needs loading. Register the handle explicitly before enqueueing it: wp_enqueue_style() skips registration when the source is false, which would drop the handle and any inline CSS attached to it. The WordPress runtime test covers the no-child, inline-style and child-theme cases; it refreshes the template globals that is_child_theme() reads (WP 6.5+) after switching the stylesheet. Closes #53 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Elementor Pro prints header and footer documents from get_header() and get_footer(). Block templates never call those, so previewing a header or footer rendered Flexia's single template, the document had no editor container, and Elementor stopped on "the content area was not found". Hand header/footer locations that Elementor registered on the theme's behalf back to Elementor's own Header & Footer page template via elementor/theme/need_override_location. Pages and other templates are unchanged; a child theme or plugin that registers its own header/footer location keeps control. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up to the 3.2.1 upgrade QA, which failed sign-off on four blocking issues.
Cause
parts/header.htmlandparts/footer.htmlcontain nothing but awp:patternslug reference. 3.2.0 rewrotepatterns/header.phpandpatterns/footer.phpunder those same slugs, so every site — customized or not — picked up the new chrome on update. A database-saved template part that only holds a pattern reference re-resolves the same way, so preserving the saved record did not preserve the layout.Changes
patterns/header.phpandpatterns/footer.phprestored byte-identical to 3.1.0. The 3.2.0 chrome ships as the newflexia/header-minimalandflexia/footer-minimalpatterns, selectable in the Site Editor.wp:navigationgets an explicitwp:page-listfallback, so it no longer resolves to the most recently created menu. The restored header carries its own inline links and never hits the fallback.nowrap, keeping WooCommerce's injected account and mini-cart icons on the logo row..wp-block-post-content ano longer underlines.wp-element-button,.wp-block-button__linkor.wc-block-components-button.tools/release-files.txtso the manifest builder ships them.FX-06 needs no change:
patterns/single-product.phpalready carriesInserter: no, so the pattern never reaches the block inserter.Verification
tools/check-theme.py— 832 block declarations, 0 errorsgit diff 7fa2ef7^Still open
FX-04 needs a browser re-test against the restored header, which keeps its original
flexWrap: "wrap". The reported slowdown on 3.2.0 is not addressed here.🤖 Generated with Claude Code