Skip to content

Commit 8325a5c

Browse files
committed
Require Twig 3.X and PHP >= 8.0
1 parent d117c42 commit 8325a5c

File tree

3 files changed

+23
-13
lines changed

3 files changed

+23
-13
lines changed

composer.json

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,12 @@
3636
]
3737
},
3838
"require" : {
39-
"twig/twig":"^1.2",
40-
"twig/extensions":"^1.3",
41-
"php":"^7.1|^8.0"
39+
"twig/twig":"^3.19",
40+
"php":">=8.0",
41+
"twig/string-extra": "^3.19",
42+
"twig/intl-extra": "^3.19",
43+
"twig/html-extra": "^3.19",
44+
"twig/markdown-extra": "^3.19"
4245
},
4346
"require-dev": {
4447
"wp-coding-standards/wpcs": "^2.1",

lib/clarkson-core-templates.php

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,12 @@
55
* @package CLARKSON\Lib
66
*/
77

8+
use Twig\Extension\DebugExtension;
9+
use Twig\Extra\Html\HtmlExtension;
10+
use Twig\Extra\Intl\IntlExtension;
11+
use Twig\Extra\Markdown\MarkdownExtension;
12+
use Twig\Extra\String\StringExtension;
13+
814
/**
915
* Allows rendering of specific templates with Twig.
1016
*/
@@ -126,7 +132,7 @@ public function render_twig( $path, $objects, $ignore_warning = false ) {
126132
return $twig->render( $template_file, $context_args );
127133
}
128134

129-
private function get_twig_environment( array $template_dirs ):Twig_Environment {
135+
private function get_twig_environment( array $template_dirs ):\Twig\Environment {
130136
if ( ! $this->twig ) {
131137
$debug = ( defined( 'WP_DEBUG' ) ? constant( 'WP_DEBUG' ) : false );
132138
$twig_args = array(
@@ -150,17 +156,17 @@ private function get_twig_environment( array $template_dirs ):Twig_Environment {
150156
* } );
151157
*/
152158
$twig_args = apply_filters( 'clarkson_twig_args', $twig_args );
153-
$twig_fs = new Twig_Loader_Filesystem( $template_dirs );
154-
$twig = new Twig_Environment( $twig_fs, $twig_args );
159+
$twig_fs = new \Twig\Loader\FilesystemLoader( $template_dirs );
160+
$twig = new \Twig\Environment( $twig_fs, $twig_args );
155161

156162
$twig->addExtension( new Clarkson_Core_Twig_Extension() );
157-
$twig->addExtension( new Twig_Extensions_Extension_I18n() );
158-
$twig->addExtension( new Twig_Extensions_Extension_Text() );
159-
$twig->addExtension( new Twig_Extensions_Extension_Array() );
160-
$twig->addExtension( new Twig_Extensions_Extension_Date() );
163+
$twig->addExtension( new IntlExtension() );
164+
$twig->addExtension( new StringExtension() );
165+
$twig->addExtension( new HtmlExtension() );
166+
$twig->addExtension( new MarkdownExtension() );
161167

162168
if ( $debug ) {
163-
$twig->addExtension( new Twig_Extension_Debug() );
169+
$twig->addExtension( new DebugExtension() );
164170
}
165171

166172
/**
@@ -180,6 +186,7 @@ private function get_twig_environment( array $template_dirs ):Twig_Environment {
180186
*/
181187
$this->twig = apply_filters( 'clarkson_twig_environment', $twig );
182188
}
189+
183190
return $this->twig;
184191
}
185192

lib/clarkson-core-twig-extension.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
* Class Clarkson_Core_Twig_Extension.
1010
* @internal
1111
*/
12-
class Clarkson_Core_Twig_Extension extends Twig_Extension {
12+
class Clarkson_Core_Twig_Extension extends \Twig\Extension\AbstractExtension {
1313

1414
/**
1515
* Twig functions.
@@ -988,7 +988,7 @@ public function getFunctions() {
988988
$allowed_functions = apply_filters( 'clarkson_twig_functions', $this->functions );
989989

990990
foreach ( $allowed_functions as $function ) {
991-
$twig_functions[] = new Twig_SimpleFunction( $function, $function );
991+
$twig_functions[] = new \Twig\TwigFunction( $function, $function );
992992
}
993993

994994
return $twig_functions;

0 commit comments

Comments
 (0)