SRC脚本仅在主页上有效?

时间:2017-01-07 作者:geektripp

好的,所以当我在主页之外的任何页面中包括我的标题,并且我检查该页面时,所有调用都显示为错误,因为它将该页面添加到源调用的根。我该如何改变这一点??以下是我的一些电话:

<script src="wp-content/themes/gamer_meld/js/jquery.flexslider.js"></script>
<script src="wp-content/themes/gamer_meld/js/fancySelect.js"></script>
<script src="wp-content/themes/gamer_meld/js/script.js"></script>

2 个回复
最合适的回答,由SO网友:Milo 整理而成

首先,不要将脚本标记直接放在模板文件中,将它们从主题/子主题的functions.php. 其次,使用API为脚本输出URI,不要硬编码或使用相对路径。

function wpdocs_theme_name_scripts() {
    wp_enqueue_script(
        \'flexslider\',
        get_template_directory_uri() . \'/js/jquery.flexslider.js\',
        array(\'jquery\'),
        null,
        true
    );
    wp_enqueue_script(
        \'fancyselect\',
        get_template_directory_uri() . \'/js/fancySelect.js\',
        array(\'jquery\'),
        null,
        true
    );
    wp_enqueue_script(
        \'myscript\',
        get_template_directory_uri() . \'/js/script.js\',
        array(\'jquery\'),
        null,
        true
    );
}
add_action( \'wp_enqueue_scripts\', \'wpdocs_theme_name_scripts\' );

SO网友:Mark Kaplun

虽然@milo所说的一切都是真的,但您的核心问题是使用相对URL造成的。永远不要使用相对URL,因为你永远不知道它们将在不同的页面中指向哪里

相关推荐

无法在模板函数.php中使用IS_HOME

我试图在标题中加载一个滑块,但只在主页上加载。如果有帮助的话,我正在使用Ultralight模板。我正在尝试(在template functions.php中)执行以下操作:<?php if ( is_page( \'home\' ) ) : ?> dynamic_sidebar( \'Homepage Widget\' ); <?php endif; ?> 但这行不通。现在,通过快速的google,我似乎需要将请