可以在指定帖子的头部制作不同的javascript吗? 例如:
帖子号码1包含另一个javascript而不是帖子号码2。 我在谈论wordpress。
谢谢!
答案 0 :(得分:0)
我强烈建议您使用 Child Theme ,以便修改header.php
文件。
使用is_page()函数,您可以将不同的脚本块分配给不同的页面。
如果您正在寻找sinlge帖子,可以使用 is_single() 。
答案 1 :(得分:0)
最简单的方法之一是通过检查当前页面是X还是Y模板/页面来修改将在functions.php中加载的CSS和JS文件。
示例:
function load_scripts_and_styles() {
// only load the CSS if the page is X or Y page
if( is_singular() ) {
wp_enqueue_style( 'bootstrap_css', get_template_directory_uri() . '/libraries/bootstrap-3.3.7-dist/css/bootstrap.min.css', array(), '3.3.7' );
}
wp_enqueue_script( 'bootstrap_js', get_template_directory_uri() . '/libraries/bootstrap-3.3.7-dist/js/bootstrap.min.js', array( 'jquery' ), '3.3.7', true );
}
add_action( 'wp_enqueue_scripts', 'load_scripts_and_styles' );
答案 2 :(得分:0)
方法1: 你可以检测帖子ID并根据它获取javascript。
$currentPID = get_the_ID();
<?php if ($currentPID != "false"): ?>
<!--home page custom JS-->
<script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/scripts/<?php echo $currentPId ?>.js"></script>
<!-- will get scripts/2.js if the post id is 2 and scripts/3.js if post id is 3 ......-->
<?php endif; ?>
如果存在,则get_the_ID将post id作为整数返回,否则返回false。
替代方法:
也可以使用预定义的Wordpress函数,如is_page()和is_single()来检测帖子并根据它们添加javascript。 例如 -
<?php if (is_single( '2' )): ?>
<!--home page custom JS-->
<script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/scripts/post2.js"></script>
<?php endif; ?>
或检测页面
<?php if (is_page('home')): ?>
<!--home page custom JS-->
<script type="text/javascript" src="<?php bloginfo('template_directory'); ?>/Scripts/homepage.js"></script>
<?php endif; ?>
记住所有代码都进入标题,无论文件夹中是否存在自定义javascript,网页都会发送额外的HTTP请求