Skip to content

Commit 8ac649d

Browse files
committed
fix: account for more payment gateway assets
1 parent 905a4c7 commit 8ac649d

File tree

1 file changed

+10
-7
lines changed

1 file changed

+10
-7
lines changed

includes/class-modal-checkout.php

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -804,14 +804,17 @@ public static function dequeue_scripts() {
804804
global $wp_scripts, $wp_styles;
805805

806806
$payment_gateways = \WC()->payment_gateways->get_available_payment_gateways();
807-
$allowed_gateway_assets = [];
807+
$allowed_gateway_assets = array_keys( $payment_gateways );
808808
if ( ! empty( $payment_gateways ) ) {
809+
// Payment gateway id doesn't always match the plugin slug, so account for these cases.
809810
foreach ( array_keys( $payment_gateways ) as $gateway ) {
810-
$class = get_class( $payment_gateways[ $gateway ] );
811-
$plugin_file = ( new \ReflectionClass( $class ) )->getFileName();
812-
$plugin_base = \plugin_basename( $plugin_file );
813-
$plugin_slug = explode( '/', $plugin_base )[0];
814-
$allowed_gateway_assets[] = $plugin_slug;
811+
$class = get_class( $payment_gateways[ $gateway ] );
812+
$plugin_file = ( new \ReflectionClass( $class ) )->getFileName();
813+
$plugin_base = \plugin_basename( $plugin_file );
814+
$plugin_slug = explode( '/', $plugin_base )[0];
815+
if ( ! in_array( $plugin_slug, $allowed_gateway_assets, true ) ) {
816+
$allowed_gateway_assets[] = $plugin_slug;
817+
}
815818
}
816819
}
817820

@@ -831,7 +834,7 @@ public static function dequeue_scripts() {
831834
}
832835
if ( ! empty( $payment_gateways ) ) {
833836
foreach ( $allowed_gateway_assets as $gateway ) {
834-
if ( false !== strpos( $wp_style->src, $gateway ) ) {
837+
if ( false !== strpos( $handle, $gateway ) || false !== strpos( $wp_script->src, $gateway ) ) {
835838
$allowed = true;
836839
break;
837840
}

0 commit comments

Comments
 (0)