这是我的做法。使用wp
动作钩子已经足够晚来提供对查询和条件的访问,但仍然发生在模板设置之前。
<?php
function my_function() {
if ( ! is_admin() && ! is_login_page() ) {
// Enqueue scripts, do theme magic, etc.
}
}
add_action( 'wp', 'my_function' );
function is_login_page() {
return in_array($GLOBALS['pagenow'], array('wp-login.php', 'wp-register.php'));
}
编辑:我误解了标题的含义(我在想wp_head
……最近主题编码太多了!)。我现在假设您正在尝试击败send_headers
行动:
function my_function() {
if ( 'index.php' == $GLOBALS['pagenow'] ) {
// Pre-header processing on the front-end
}
}
add_action( 'wp_loaded', 'my_function' );
它不是超级优雅,但至少它是简洁的。而且它似乎很可能会继续工作,这总是好消息。