Wordpress add_filter用于自定义内容

时间:2013-01-03 16:46:11

标签: wordpress add-filter

有人能告诉我如何使用add_filter函数来获取页面的plugin_dir_path吗?

当我使用get_post_type()为我的movie_reviews设置一个模板时没有问题 但我不知道如何在无register_post_type上使用该函数。

我想在网址www.domain.com/user_profile上使用自定义页面 并在表单动作action =“search_result” 但我不知道这是如何工作的无register_post_type

add_filter( 'template_include','include_template_function', 1 );

function include_template_function( $template_path ) {

    if ( get_post_type() == 'movie_reviews' ) {
        $template_path = plugin_dir_path( __FILE__ ) .'/single-movie_reviews.php';
    }
    if ( ....... == 'search_sesult' ) {
        $template_path = plugin_dir_path( __FILE__ ) .'/movie-searchresult_reviews.php';
    }
    if ( ....... == 'user_profile' ) {
        $template_path = plugin_dir_path( __FILE__ ) .'/user_profile.php';
    }   


    return $template_path;
}

1 个答案:

答案 0 :(得分:0)

您可以使用Conditional Tags

例如:

add_filter( 'template_include','include_template_function', 1 );

function include_template_function( $template_path ) {

    if( is_search() ) 
        $template_path = plugin_dir_path( __FILE__ ) .'/movie-searchresult_reviews.php';

    if( is_author() ) 
        $template_path = plugin_dir_path( __FILE__ ) .'/user_profile.php';


    return $template_path;
}