Skip to content

Commit 6059817

Browse files
committed
Improve detection of script additions via wp_localize_script()
1 parent 8843d0f commit 6059817

File tree

1 file changed

+21
-2
lines changed

1 file changed

+21
-2
lines changed

includes/validation/class-amp-validation-callback-wrapper.php

Lines changed: 21 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -293,9 +293,28 @@ protected function finalize_scripts( WP_Scripts $wp_scripts, array $before_regis
293293
if ( empty( $dependency->extra[ $key ] ) ) {
294294
continue;
295295
}
296+
297+
if ( empty( $before_extras[ $handle ][ $key ] ) ) {
298+
$before = [];
299+
} elseif ( 'data' === $key ) {
300+
// Undo concatenation done by \WP_Scripts::localize().
301+
$before = explode( "\n", $before_extras[ $handle ][ $key ] );
302+
} else {
303+
$before = $before_extras[ $handle ][ $key ];
304+
}
305+
306+
if ( empty( $dependency->extra[ $key ] ) ) {
307+
$after = [];
308+
} elseif ( 'data' === $key ) {
309+
// Undo concatenation done by \WP_Scripts::localize().
310+
$after = explode( "\n", $dependency->extra[ $key ] );
311+
} else {
312+
$after = $dependency->extra[ $key ];
313+
}
314+
296315
$additions = array_diff(
297-
array_filter( isset( $dependency->extra[ $key ] ) ? (array) $dependency->extra[ $key ] : [] ),
298-
array_filter( isset( $before_extras[ $handle ][ $key ] ) ? (array) $before_extras[ $handle ][ $key ] : [] )
316+
array_filter( $after ),
317+
array_filter( $before )
299318
);
300319
foreach ( $additions as $addition ) {
301320
AMP_Validation_Manager::$extra_script_sources[ $addition ][] = array_merge(

0 commit comments

Comments
 (0)