如何在WordPress中添加动态页面URL?

时间:2018-10-30 作者:Nikolai Maksimov

我有一个自定义的帖子类型新闻。

此外,我还添加了前端后编辑页面。

此时,我可以通过打开以下url编辑新闻:

主办com/编辑新闻/?id=21231

I want to make a page with url looks like with dynamically changing id of post:

主办com/news/21231/edit

我需要在哪里进行更改,以便能够在WordPress中将此url添加到我的特定页面?

1 个回复
最合适的回答,由SO网友:Pravin Work 整理而成

为此,您需要熟悉重写URL。

这个结果可以通过重写URL来实现。

这里的新闻将是页面和帖子,操作将是内部查询字符串。

在这里你可以找到一些tutorials of rewrite URLs in WordPress.

例如http://example.com/news/?edit=100是让我们制作漂亮的URL。

/**
 * Add rewrite tags and rules
 */
function myplugin_rewrite_tag_rule() {
    add_rewrite_tag( \'%news%\', \'([^&]+)\' );
    add_rewrite_rule( \'^news/([^/]*)/?\', \'index.php?id=2&actionpostid=100&action=edit\',\'top\' );
}
add_action(\'init\', \'myplugin_rewrite_tag_rule\', 10, 0);
此处id=2是新闻页面的页面id,其他参数是自定义的。

要检索值,您需要在WordPress中添加这些属性。

add_filter(\'query_vars\', function($vars) {
   $vars[] = "actionpostid";
   $vars[] = "action";
   return $vars;
});
并通过

get_query_var(\'actionpostid\')
get_query_var(\'action\')

结束

相关推荐

Let me choose permalinks

我需要选择一个叫做“mysite”的永久链接。com/1418”,但wordpress不断在永久链接中添加“-2”。通常这意味着我已经有了一个名为“相同”的页面,它位于垃圾箱或其他地方。但这里的情况似乎并非如此。我尝试在设置中重置永久链接,这也没有帮助。我如何使用数字作为页面名称permalink,而不用wordpress在permalink中添加“-2”。