为什么 add_action() 在条件语句中没有正确执行?
Why is add_action() not correctly executed in a conditional statement?
在functions.php
中,我想为首页附加一个函数:
function dequeue_iw_theme_styles() {
wp_dequeue_style('iw');
}
if (is_page('new-front-page')) {
add_action('wp_print_styles', 'dequeue_iw_theme_styles', 100);
}
虽然此代码不起作用。为什么?
反过来试试:
add_action('wp_print_styles', 'dequeue_iw_theme_styles', 100);
function dequeue_iw_theme_styles() {
if (is_page('new-front-page')) {
wp_dequeue_style('iw');
}
}
我认为问题在于通过有条件地添加操作,您已经来不及判断它是否是某个模板。这样,无论如何您都在添加操作,并且仅在模板匹配时才执行代码。
在functions.php
中,我想为首页附加一个函数:
function dequeue_iw_theme_styles() {
wp_dequeue_style('iw');
}
if (is_page('new-front-page')) {
add_action('wp_print_styles', 'dequeue_iw_theme_styles', 100);
}
虽然此代码不起作用。为什么?
反过来试试:
add_action('wp_print_styles', 'dequeue_iw_theme_styles', 100);
function dequeue_iw_theme_styles() {
if (is_page('new-front-page')) {
wp_dequeue_style('iw');
}
}
我认为问题在于通过有条件地添加操作,您已经来不及判断它是否是某个模板。这样,无论如何您都在添加操作,并且仅在模板匹配时才执行代码。