自定义发布类型、自定义分类和固定链接?

时间:2011-10-03 作者:Xavier

假设我注册了一个名为:

Clients
包括以下几个术语:Microsoft, IBM, Apple

在名为projects:

Permalinks公司

/%year%/%monthnum%/%taxonomy%/%postname%/ 这是我正在使用的结构;

http://www.example.com/projects/ - 显示“项目”下的所有帖子

http://www.example.com/projects/clients/ 显示404

http://www.example.com/projects/clients/ibm/ 显示下的所有帖子projects 使用术语ibm

如何让Wordpress显示客户端下所有帖子的索引?例如,如果用户访问了/项目/客户/Microsoft、Apple和IBM的所有帖子,就会显示出来。

我知道一种方法是使用一个页面,然后查询进入该页面,但本质上是SEO和相关性,我不能把页面命名为slug其他东西。

提前谢谢。

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

您需要编写自定义规则。我为最近的一个项目做了类似的事情。创建一个模板,并将其分配给一个页面,slug作为“客户端”(或任何您喜欢的内容,但也可以按照以下规则更改slug)。请尝试以下代码,使用functions.php:

add_action(\'init\', \'custom_rule\');
function custom_rule()
{
    global $wp, $wp_rewrite;
    $wp_rewrite->add_rule(\'^projects/clients/\', \'index.php?pagename=clients\', \'top\');
}
然后在该模板上,使用所需的参数(客户机分类法)形成一个自定义查询,并在其中循环。

注意:将上述代码放入函数后。php文件,转到设置>永久链接,然后单击保存。

希望这有帮助(我建议您先在本地试用)!

SO网友:Jamal Jama

您无法访问clients 位置,因为它不是一个术语,它是您的分类基础。

http://www.example.com/projects/clients/ 是分类基础。就像访问http://www.example.com/tags/ 这是行不通的。

http://www.example.com/projects/clients/ibm/ 是分类术语URL。就像访问http://www.example.com/tags/example 这很有效。

如果要访问/clients/ URL然后您应该创建一个带有自定义模板的页面,该模板可以显示下所有帖子的内容/clients/ 分类学

结束

相关推荐

Can't get permalinks working!

我无法让WordPress pretty permalinks在我的Fedora LAMP服务器上工作。如果我设置它们并单击页面/帖子链接,我会得到一个“哎呀!此链接似乎已断开。“”这个。htaccess文件可写且正在更新,mod\\u重写模块似乎已加载到我的httpd中。conf(见下文)我的apache日志中的错误只是说“找不到文档”</我已经筋疲力尽了!这是httpd.conf:### Section 1: Global Environment # start the rew