根据帖子类型加载脚本

时间:2011-02-24 作者:Alex Older

有没有一种基于所查看的帖子类型加载js文件的好方法?

我有一个供应商,上面有一个地图,但我只想在查看单个地图时加载js。我在函数中加载脚本。php文件。

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

如果您挂接稍后的操作,例如template_redirect, 您应该能够检查查询变量,以确定是否正在查看您的特定帖子类型。

add_action( \'template_redirect\', \'example_callback\' );

function example_callback() {
    if( is_single() && get_query_var(\'your-posttype\') )
        wp_enqueue_script( .. your args .. );
}
或者像这样。。。

add_action( \'template_redirect\', \'example_callback\' );

function example_callback() {
    if( is_single() && get_query_var(\'post_type\') && \'your-type\' == get_query_var(\'post_type\') )
        wp_enqueue_script( .. your args .. );
}
希望这有帮助。

SO网友:Bainternet

您可以使用以下代码:

add_action(\'admin_init\',\'load_my_script\');
function load_my_script() {
  global $typenow;
  if (empty($typenow) && !empty($_GET[\'post\'])) {
    $post = get_post($_GET[\'post\']);
    $typenow = $post->post_type;
  }
  if (!is_admin() && is_single() && $typenow==\'your post type\') {
    //load your script here
  }
}

结束

相关推荐

获取在Functions.php中设置的变量,并在我的Custom Post模板中回显它们

在我的函数中设置了以下函数。php文件,以允许我的自定义帖子类型“Slideshow”工作。add_action( \'the_post\', \'paginate_slide\' ); function paginate_slide( $post ) { global $pages, $multipage, $numpages; if( is_single() && get_post_type() == \'lom_s