is_page_template()在functions.php中不起作用

所以我有一个脚本, 只想包含在一个模板文件中。模板文件位于我的子主题中的名为模板的文件夹中。我以为可以通过在functions.php中包含if语句并按如下名称定位模板文件来做到这一点:

function header_anim() { wp_enqueue_script( 'head', get_stylesheet_directory_uri() . '/js/head.js' ); }if( is_page_template( '/templates/home-template.php' )) { add_action( 'wp_enqueue_scripts', 'header_anim' ); }

但是, 似乎由于某种原因它无法识别if语句。
#1怎么样了?我对样式表所做的一件事可能与此脚本一起使用。正在构造调用wp_enqueue_script的函数内的if语句, 并使用条件if not return。例如:
function header_anim() { if( !is_page_template( '/templates/home-template.php' )){ return; } wp_enqueue_script( 'head', get_stylesheet_directory_uri() . '/js/head.js' ); } add_action( 'wp_enqueue_scripts', 'header_anim' );

让我知道这是否适合你… 。
后来果汁
#2嗯, 这怎么样。让我们尝试做一些不同的调节。… 你是否还有另一个功能正在为其余模板/页面加载另一个脚本?如果是这样, 我们可以将它们组合为一个功能, 希望它能起作用…
function equeue_scripts_header () { if( is_page_template( '/templates/home-template.php' )){ wp_enqueue_script( 'head', get_stylesheet_directory_uri() . '/js/head.js' ); } else { /*call enqueue script for that corresponds to the rest of thesite */ } } add_action( 'wp_enqueue_scripts', 'equeue_scripts_header' );

【is_page_template()在functions.php中不起作用】希望我不只是添加你已经尝试过的另一个迭代。让我知道这是如何工作的…

    推荐阅读