在插件中,我正在生成一个分类的分页链接,
即http://localhost/?cat=17&paged=5
。该类别以slug和id为人所知。
有没有办法让这个URL转换为用户定义的“好永久链接”格式,
即http://localhost/category/foo/page/5
?
(假设我们正在运行Wordpress 2.8 / 2.9 +)
编辑:由于对我想要实现的目标存在一些误解,这就是我所拥有的:
使用这些数据,我可以创建该页面的URL,例如http://localhost/?cat=17&paged=5
,并且效果很好。这个问题具有视觉性质:如果用户启用了非常好的永久链接,那么这将不太适合。
问题是:如何从(或为)我获得的信息中获得正确的,非常永久的(即http://localhost/category/foo/page/5
)?
编辑2:显然,如果用户有非常永久链接已禁用,那么就没有相当多的永久链接。我知道,这实际上不是问题的主题......目前,让我们假设用户有一个任意永久链接设置。我生成一个链接,看起来应该像用户想要的那样。
答案 0 :(得分:1)
你看过WP_Rewrite吗?
答案 1 :(得分:0)
All In One SEO符合您的要求吗?我实际上以30美元的价格购买了“专业”版本,这非常值得。
答案 2 :(得分:0)
我的Wordpress安装(2.9.2)会自动执行此操作 - 规范的URL已经内置到Wordpress中一段时间了。也许你的插件是disabling this feature?
答案 3 :(得分:0)
我猜你已经弄明白但我只是想把它拿出来给别人看。我想我了解你的情况。如果我已正确阅读您的问题,则更改管理永久链接设置不适用。
您可以获取类别ID,然后使用get_category_link()
函数获取“漂亮”的永久链接。然后将分页添加到最后。
您可以爆炸永久链接以获取类别ID和分页编号,然后使用上面的步骤将它们组合在一起。
这是你在找什么?
答案 4 :(得分:0)
生成链接的正确方法是使用get_category_link和add_query_arg
在您的示例中,以下内容可行:
$category_link = add_query_arg( array('paged' => 5), get_category_link($category->term_id));
这将生成URL,Wordpress将重定向到正确的页面。
答案 5 :(得分:-1)
查看此页面,它解释了非常好的永久链接。 http://codex.wordpress.org/Using_Permalinks
您应该在
中找到这些设置Wordpress->设置 - >固定链接
我认为
/%类别%/%postname%
朝着你想要的方向
您也可以尝试使用htaccess重定向您的网址,以下是一些示例:
抱歉darf bis jetzt nur ein link posten pfft ...: - (
亲切的问候, Mahatmanich