首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >WordPress自定义分类

WordPress自定义分类
EN

Stack Overflow用户
提问于 2010-05-27 00:59:07
回答 2查看 1.4K关注 0票数 0

我有以下代码来为我的项目组合构建自定义分类法:

代码语言:javascript
复制
add_action( 'init', 'create_pc_db_taxonomies', 0 );

function create_pc_db_taxonomies() {
    register_taxonomy( 'type', 'post', array( 'hierarchical' => true, 'label' => 'Type', 'query_var' => true, 'rewrite' => array( 'slug' => 'type' ) ) );
}

我已经在我的站点上创建了一个项目组合类别(我删除了/ category / base),并创建了一些项目并根据它们设置了自定义分类法。所以我得到了以下设置:http://domain.com/portfolio/item1/,但我想让分类链接看起来像这样:http://domain.com/portfolio/type/web,然后这将显示与该类型相关的项目组合列表。目前它们是根目录,像http://domain.com/type/web一样创建404,但我也尝试过添加'portfolio/type‘作为分类插件,但它也只是创建了一个404,但我非常确定这是错误的方式。有什么帮助吗?

谢谢

编辑:网站在这里:http://driz.co.uk/所有的作品都在一个名为Portfolio的类别中,每张图片下面是标题和自定义分类(如果你点击它们,你会得到404)

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-05-27 04:53:26

确保禁用所有插件(至少是那些可以重写的插件),并删除wp_options表中的选项rewrite_rules

现在删除你的主题中的任何钩子,干预自定义税收和post类型,并在init上运行此程序;

代码语言:javascript
复制
register_taxonomy(
    'type',
    'post',
    array(
        'hierarchical' => true,
        'label' => 'Type',
        'rewrite' => array('slug' => 'portfolio/type')
    )
);

在您的固定链接设置中,选择一个默认选项,并确保设置了类别和标签库,然后更新。

像以前一样转储$wp_rewrite,您应该会看到几行代码,如下所示;

代码语言:javascript
复制
[portfolio/type/([^/]+)/page/?([0-9]{1,})/?$] => index.php?type=$matches[1]&paged=$matches[2]
[portfolio/type/([^/]+)/?$] => index.php?type=$matches[1]

它们应该放在数组的最开始处,在标签、类别等之前。

让我知道你的进展如何!

(当我运行我安装的WP3.0-beta-2中的代码时,它可以工作,所以我假设现在发生了一些奇怪的事情)。

票数 0
EN

Stack Overflow用户

发布于 2010-05-27 01:47:00

我相信你可以使用portfolio/type来伪造一个这样的插件--关键是,一旦你更新了你的代码,你就需要刷新重写规则。

只需在管理员中重新保存您的固定链接设置即可。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2915131

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档