繁体   English   中英

在 Wordpress 中使用 wp_enqueue

[英]Using wp_enqueue in Wordpress

我求助于这个很棒的社区,经过几天的尝试修复这个错误,我的问题真的很简单,但它已经到了我身上。 我正在尝试在使用进化主题时将 Java 脚本排队到我的主题我的登录插件中。

这是执行此操作的代码片段,我使用全局函数来检查该函数是否正在加载,并且没有被加载。 'a' 不会变为真。

出于某种原因,它看起来像 'wp_enqueue_scripts 不起作用。 我也尝试添加 wp_head() ,但没有运气。

 <?php $GLOBALS['a'] = 'false'; add_action( 'wp_enqueue_scripts', 'load_location' ); function load_location() { $GLOBALS['a'] = 'true'; wp_register_script('load_location_test',get_template_directory_uri().'/load_location.js', array('jquery'),'1.1',true); wp_enqueue_script('load_location_test'); } ?> <?php echo $GLOBALS['a'] ?>;

谢谢指教

链接是http://www.meetntrain.com/register

您应该查看文档或其他插件的文件、在线演练等,以了解更多信息。 wp_enqueue_scripts是你用来加载你的 Javascript 的钩子,你有基本的正确想法,但是在你的 functions.php 中尝试一些更像这样的东西:

function my_custom_scripts() {
    wp_register_script( 'custom-js', 'js/custom.js' );
    wp_enqueue_script( 'custom-js', 'js/custom.js', false );
}

add_action( 'wp_enqueue_scripts', 'my_custom_scripts' );

为您的 JS 文件所在的目录更改“js/custom.js”。

另一种选择,如果这被证明太难了,那就是在你的footer.php 的底部放置一个指向JS 文件的直接链接。 <script src="/path/to/my/file.js"></script>

不过,我确实发现排队脚本有时有点奇怪,希望这可以帮助您弄清楚。

因此,为了让您的入队工作,您需要在您的functions.php文件或插件中添加代码。

add_action( 'wp_enqueue_scripts', 'load_location' );

function load_location() {
    wp_register_script('load_location_test',get_template_directory_uri().'/load_location.js', array('jquery'),'1.1',true);
    wp_enqueue_script('load_location_test');
}

这会将 JS 文件添加到您的所有页面。 如果要定位特定页面,可以通过 JavaScript 或直接在 PHP 文件中进行。

如果您的主题使用body_class() ,您可以按类定位该特定页面。 然后你应该像这样包装你的JS:

if( $('body.classUsed').length ){
// Your JS code here
}

请注意,该文件仍将一直排队。 或者,如果您只想将 JS 文件添加到指定页面,则可以将其包装在is_page()条件中:

add_action( 'wp_enqueue_scripts', 'load_location' );

function load_location() {
    if( is_page('your-page') ){
       wp_register_script('load_location_test',get_template_directory_uri().'/load_location.js', array('jquery'),'1.1',true);
       wp_enqueue_script('load_location_test');
    }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM