将包含 PHP 变量的 WP 脚本排入队列

Dar*_*n47 3 php wordpress

我想知道您是否可以在 Wordpress 中加入一个包含 php 变量的脚本。如果这是可能的,它将如何完成?

我试过这个,但是我得到了错误。

function my_scripts_method() {
wp_enqueue_script(
    'custom-script',
    get_stylesheet_directory_uri() . '/masonry.php',
    array( 'jquery' )
);
}

add_action( 'wp_enqueue_scripts', 'my_scripts_method' );
Run Code Online (Sandbox Code Playgroud)

小智 5

你的问题有点模棱两可。

  1. 如果要包含 PHP 文件,请在 PHP 文件中使用include_oncerequire_once
  2. 如果要包含 JavaScript 文件,请使用wp_enqueue_script. 你的代码应该是这样的:

    wp_enqueue_script(
        'custom-script',
        get_stylesheet_directory_uri() . '/masonry.js',
        array( 'jquery' )
    );
    
    Run Code Online (Sandbox Code Playgroud)

    此外,如果您想在 JS 文件中使用 PHP 变量,请使用wp_localize_script.

    入队后,使用以下行:

    $name = "my_name";
    $params = array('name' => $name);
    wp_localize_script( 'custom-script', 'OBJECT', $params );
    
    Run Code Online (Sandbox Code Playgroud)

    在 masonry.js 中,使用OBJECT.name来获取值。