Repository navigation
Shortcodes: Honor empty-string replacements in wp.shortcode.replace() - #15347
salvatorecorsi wants to merge 1 commit into
Conversation
|
The following accounts have interacted with this PR and/or linked issues. I will continue to update these lists as activity occurs. Core Committers: Use this line as a base for the props when committing in SVN: To understand the WordPress project's expectations around crediting contributors, please review the Contributor Attribution page in the Core Handbook. Props Bot commandsYou can trigger Props Bot actions by commenting on this PR:
|
Test using WordPress PlaygroundThe changes in this pull request can previewed and tested using a WordPress Playground instance. WordPress Playground is an experimental project that creates a full WordPress instance entirely within the browser. Some things to be aware of
For more details about these limitations and more, check out the Limitations page in the WordPress Playground documentation. |
Allow
wp.shortcode.replace()callbacks to return an empty string to remove a matched shortcode and its enclosed content. The current truthiness check ignores that result and leaves the original shortcode unchanged.The condition now accepts
''while preserving the existing fallback forfalse,null,undefined, numeric zero andNaN. Escaped shortcodes and unmatched extra brackets retain their existing behavior. This keeps the change focused on the reported case and matches the empty-string handling in Gutenberg's shortcode package.Trac ticket: https://core.trac.wordpress.org/ticket/35216
Validation
compiled.htmland 719 inindex.html, using the unchanged upstream Playwright driver.spawn npm EINVAL, independently reproduced without loading this patch. The browser run uses a coordinator-only Playwright config that changes justexecutablePathto the installed Chromium. No assertions or repository configuration were changed for that adapter.No PHP code changes are included.
Use of AI Tools
Codex investigated the ticket, authored the change and regression tests, ran the recorded checks and performed a separate automated source review. No separate human review by the account owner has taken place.
This Pull Request is for code review only. Please keep all other discussion in the Trac ticket. Do not merge this Pull Request. See GitHub Pull Requests for Code Review in the Core Handbook for more details.