重定向到Wordpress中的最新自定义帖子类型

重定向到Wordpress中的最新自定义帖子类型,wordpress,custom-post-type,Wordpress,Custom Post Type,在我的Wordpress网站上,我试图创建一个链接,重定向到最新的“插曲”(一种自定义帖子类型)。我已将此代码段修改为: //*链接到最新一集 函数wpa\u最新事件\u重定向($request){ 如果(isset($_GET['latest'])){ $latest=新的WP\u查询(数组( “分类法”=>“插曲”, “每页帖子”=>1 ) ); 如果($latest->have_posts()){ wp_重定向(get_permalink($latest->post->ID)); 出口

在我的Wordpress网站上,我试图创建一个链接,重定向到最新的“插曲”(一种自定义帖子类型)。我已将此代码段修改为:

//*链接到最新一集
函数wpa\u最新事件\u重定向($request){
如果(isset($_GET['latest'])){
$latest=新的WP\u查询(数组(
“分类法”=>“插曲”,
“每页帖子”=>1
) );
如果($latest->have_posts()){
wp_重定向(get_permalink($latest->post->ID));
出口
}
}
}
添加动作(“解析请求”、“wpa最新事件”重定向)当我查看时,我认为这个bug是因为“分类法”应该是一个类似分类法的名称

$latest = new WP_Query( array(
        'videos' => 'episode',
        'posts_per_page' => 1
    ) );
但它

自版本3.1以来已弃用,支持“税务查询”

所以你应该使用

$latest = new WP_Query( array(
        'tax_query' => array(
          'taxonomy' => 'episode'
         ),
        'posts_per_page' => 1
    ) );
然而,既然你说“插曲”不是一种分类法,而是一种自定义的post_类型,那么这可能对你有用:

$latest = new WP_Query( array(
        'post_type' => 'episode',
        'posts_per_page' => 1
    ) );

谢谢,这很有帮助!我能够使用它,这是因为我将类别应用于自定义帖子类型:

//* Link to Latest in Category
function wpa_latest_in_category_redirect( $request ){
    if( isset( $_GET['latest'] )
        && isset( $request->query_vars['category_name'] ) ){

        $latest = new WP_Query( array(
            'category_name' => $request->query_vars['category_name'],
        'post_type'      => array( 'episode' ),
            'posts_per_page' => 1
        ) );
        if( $latest->have_posts() ){
            wp_redirect( get_permalink( $latest->post->ID ) );
            exit;
        }

    }
}
add_action( 'parse_request', 'wpa_latest_in_category_redirect' );