Release 1.2.21 — Font Awesome never loaded alongside Elementor - #349
Merged
Conversation
Ships the two Font Awesome fixes found while diagnosing the demo, plus the related-posts WP_Error guard and the regenerated POT already on master. Also adds tools/check-version.mjs and wires it into `verify` and `prebuild`. The theme keeps its version in four files and nothing checked that they agreed -- readme.txt's Stable tag had been sitting at 1.2.19 while the theme shipped 1.2.20, and that is exactly the kind of drift this catches. While regenerating the POT, fixed make-pot.mjs passing "Shapely <version>" as --package-name. WP-CLI reads the version from style.css and appends it itself, so every generated POT carried the doubled "Project-Id-Version: Shapely 1.2.20 1.2.20". Co-Authored-By: Claude Opus 5 (1M context) <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.
Cuts 1.2.21 with the fixes behind the broken demo at https://colorlibhub.com/shapely/.
What was wrong
The demo had two independent faults. The first was a PHP fatal in the companion
plugin's Portfolio widget, already fixed and released as Shapely Companion
1.2.12. This PR carries the second.
Font Awesome never loaded. The theme enqueued its Font Awesome 6 under the
generic
font-awesomehandle. WordPress keeps only the first registration of ahandle, and Elementor registers
font-awesomefor the Font Awesome 4.7 itbundles — so on the demo, and on any site running Elementor, the theme's icon
font was silently dropped:
The theme's markup uses
fa-brands,fa-solid,fa-x-twitterandfa-mobile-screen, none of which exist in Font Awesome 4, so the social links,search button, menu and pagination arrows all rendered as blank boxes.
Reproduced locally by registering
font-awesomeat priority 1 the way Elementordoes, then counting the theme's stylesheet on the page:
The customizer had the same problem plus a broken path. The vendored Epsilon
framework enqueued
EPSILON_URI . '../../assets/css/fontawesome6/all.min.css',which resolves to
.../shapely/inc/assets/css/...— one directory short of thetheme root, and a file that has never existed. So the customizer 404'd on its
own icons regardless of the handle collision.
Also in this release
taxonomies are unregistered —
wp_get_object_terms()returns aWP_Errorthere, and
! empty()is true for an object, so it went straight intotax_query.languages/shapely.pot, which predated the text domainunification and was missing 86 strings.
tools/check-version.mjs.readme.txthad drifted to 1.2.19 while thetheme shipped 1.2.20 because nothing compared the four version files.
make-pot.mjsemittingProject-Id-Version: Shapely 1.2.20 1.2.20.rather than checking anything.
Verification
npm run verifyclean (0 errors),php -lacross 85 files, build produces a243-file zip with no developer files and version 1.2.21 throughout.
Note for child themes: anything calling
wp_dequeue_style( 'font-awesome' )toswap the icon set needs the new
shapely-font-awesomehandle. The theme's othergeneric handles (
bootstrap,flexslider,owl.carousel) carry the samecollision risk but are deliberately left alone — they are not currently broken
anywhere, and renaming them would break dequeues for no present benefit.