Custom post types

时间:2010-09-21 作者:adamtomat

我做了一个定制的帖子类型,叫做“案例研究”。

有一个案例研究页面,显示每个自定义帖子的标题和一个小例外。但是,当您单击标题查看单个帖子时,在导航栏上,当前选项卡将从“Case studies“收件人”News“。其中,新闻是默认的帖子页面,案例研究是模板页面。

有没有办法使自定义帖子类型成为Case Studies 页或者至少设置一个可用于自定义帖子类型的模板文件。当您查看单个case study 发布我需要导航以显示您仍在Case Studies 页面而非新闻。

谢谢

2 个回复
SO网友:jaredwilli

// Template redirect for custom templates
add_action( \'template_redirect\', \'template_redirect\' );

public function template_redirect() {
    global $wp_query;
    if ( $wp_query->query_vars[\'post_type\'] == \'case_studies\' ) {
        get_template_part( \'single-casestudies\' ); // a custom page-slug.php template
        die();
    }
}
这与@Dalton提到的一样,您需要创建一个名为page casestudies的自定义页面模板。php或任何你想命名的东西,然后在WP admin中创建一个包含大量“案例研究”的页面,以匹配页面{slug}。php或页面{id}。页面id匹配的php。您可以使用该页面。php代码,在if(have\\u posts()while(have\\u posts()循环之前有一两行。有点像这样:

$paged=(get\\u query\\u var(\'paged\')?get\\u query\\u var(\'paged\'):1;query\\u posts(数组(\'post\\u type\'=>\'案例研究\',\'分页\'=>$分页));

if (have_posts()) : while (have_posts()) : the_post();
如果我误解了问题,很抱歉,但我认为这可以解决问题。

SO网友:Dalton Rooney

我相信您希望使用rewrite参数将permalink更改为您的自定义帖子类型。就创建自定义帖子模板而言,格式为单一CUSTOMPOSTTYPE。php

以下是我为此找到的参考资料:http://kovshenin.com/archives/extending-custom-post-types-in-wordpress-3-0/

例如,在我的网站上,我有一个名为“动画”的普通页面,它是我自定义帖子类型(动画)的登录页。我的重写段塞是“动画”,我的模板是单个动画。php。permalink结构看起来像mysite。com/动画/动画名称

结束

相关推荐