如何为多个类别中的帖子更改URL中的类别?

时间:2011-07-22 作者:Mikko Saari

如何更改出现在多个类别中的帖子URL中的类别slug?我想更改使用id最低的类别的默认WordPress行为。

我想这可以做到:

add_filter(\'post_link\', \'mspc_post_link\', 1, 2);
function mspc_post_link($link, $post) {
    if (strpos($link, \'bad-category-slug\')) {
        $cats = get_the_category($post->ID);
        foreach ($cats as $cat) {
            if ("Bad Category Name" != $cat->cat_name) {
                $slug = $cat->category_nicename;
                break;
            }
        }
        $link = str_replace(\'bad-category-slug\', $slug, $link);
    }
    return $link;
}
但是,尽管这种方法确实能按预期工作,但它并没有改变用户可见的URL。

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

类似插件,但与最新wp版本3.5.2兼容

http://wordpress.org/plugins/wp-category-permalink/

这个插件允许你为你的帖子选择一个“主要”类别,以获得更好的永久链接和SEO。它使用的元数据与;Hikari类别Permalink“;以及;sCategory Permalink“;,但它是用更好更干净的代码重写的。

要求:WP 3.5或更高兼容:3.5.2上次更新:2013年4月18日

SO网友:Matthew Boynes

尽管这个问题已经很老了,而且你可能已经离开很久了,但我想我还是会提供一个解决方案:-)。

退房http://wordpress.org/extend/plugins/hikari-category-permalink/, 这让你可以完全按照你的要求去做。

干杯~

结束

相关推荐

Permalinks for quote authors

What I have:引用的网站,格式为:“引用文本”-引用作者参见quotup.com 对于我的考试网站(我为考试中的亵渎行为提前道歉)。What I\'m after:单击“-Quote Author”将启动一个包含该Quote Author所有引用的页面,URL为:示例。史蒂夫·史蒂文森,其中史蒂夫·史蒂文森是引文作者。What I\'ve done:创建了一个名为wp\\u qauthor的自定义表,该表通过post\\u meta(qauthor\\u id)绑定到wp\\u posts向函数