Automattic\WooCommerce\Internal\AddressProvider
AbstractAutomatticAddressProvider::load_scripts
Enqueues the checkout script, checks if it's already registered or not so we don't duplicate, and prints out the JWT to the page to be consumed.
Метод класса: AbstractAutomatticAddressProvider{}
Хуков нет.
Возвращает
null. Ничего (null).
Использование
$AbstractAutomatticAddressProvider = new AbstractAutomatticAddressProvider(); $AbstractAutomatticAddressProvider->load_scripts();
Код AbstractAutomatticAddressProvider::load_scripts() AbstractAutomatticAddressProvider::load scripts WC 10.3.6
public function load_scripts() {
// If the address autocomplete setting is disabled, don't load the scripts.
if ( wc_string_to_bool( get_option( 'woocommerce_address_autocomplete_enabled', 'no' ) ) !== true ) {
return;
}
if ( ! is_checkout() ) {
return;
}
if ( ! $this->get_jwt() ) {
return;
}
$suffix = Constants::is_true( 'SCRIPT_DEBUG' ) ? '' : '.min';
$version = Constants::get_constant( 'WC_VERSION' );
if ( ! wp_script_is( 'a8c-address-autocomplete-service', 'registered' ) ) {
wp_register_script( 'a8c-address-autocomplete-service', self::get_asset_url( 'assets/js/frontend/a8c-address-autocomplete-service' . $suffix . '.js' ), array( 'wc-address-autocomplete' ), $version, array( 'strategy' => 'defer' ) );
}
if ( ! wp_script_is( 'a8c-address-autocomplete-service', 'enqueued' ) ) {
wp_enqueue_script( 'a8c-address-autocomplete-service' );
}
wp_add_inline_script(
'a8c-address-autocomplete-service',
sprintf(
'var a8cAddressAutocompleteServiceKeys = a8cAddressAutocompleteServiceKeys || {}; a8cAddressAutocompleteServiceKeys[ %1$s ] = { key: %2$s, canTelemetry: %3$s };',
wp_json_encode( $this->id ),
wp_json_encode( $this->get_jwt() ),
wp_json_encode( false !== $this->can_telemetry() && (bool) $this->can_telemetry() )
),
'before'
);
}