From 876be4a0411b7b7445d336b0af64d1d8b708cc8b Mon Sep 17 00:00:00 2001 From: magdev Date: Wed, 18 Feb 2026 15:06:15 +0100 Subject: [PATCH] feat: register do_shortcode() as Twig function (v1.0.7) Adds do_shortcode to TwigService::registerWordPressFunctions() so child themes and partials can render WordPress shortcodes directly inside Twig templates via {{ do_shortcode('[shortcode]') }}. Co-Authored-By: Claude Sonnet 4.6 --- CHANGELOG.md | 6 ++++++ inc/Twig/TwigService.php | 4 ++++ style.css | 2 +- 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index a062878..d5e596a 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,12 @@ All notable changes to this project will be documented in this file. +## [1.0.7] - 2026-02-18 + +### Added + +- `do_shortcode()` registered as a Twig function in `TwigService`, allowing shortcodes to be rendered directly from Twig templates via `{{ do_shortcode('[shortcode]') }}` + ## [1.0.6] - 2026-02-14 ### Fixed diff --git a/inc/Twig/TwigService.php b/inc/Twig/TwigService.php index 160c0ac..5c76f7a 100644 --- a/inc/Twig/TwigService.php +++ b/inc/Twig/TwigService.php @@ -132,6 +132,10 @@ class TwigService return wp_kses_post($content); }, ['is_safe' => ['html']])); + $this->twig->addFunction(new TwigFunction('do_shortcode', function (string $content): string { + return do_shortcode($content); + }, ['is_safe' => ['html']])); + // Formatting. $this->twig->addFunction(new TwigFunction('number_format_i18n', function (float $number, int $decimals = 0): string { return number_format_i18n($number, $decimals); diff --git a/style.css b/style.css index 51bd7d0..50367cd 100644 --- a/style.css +++ b/style.css @@ -7,7 +7,7 @@ Description: A modern WordPress Block Theme built from scratch with Bootstrap 5. Requires at least: 6.7 Tested up to: 6.7 Requires PHP: 8.3 -Version: 1.0.6 +Version: 1.0.7 License: GNU General Public License v2 or later License URI: http://www.gnu.org/licenses/gpl-2.0.html Text Domain: wp-bootstrap