wordpress的注册分类功能中的ep mask到底是做什么的?

时间:2016-09-05 09:03:39

标签: wordpress

我使用register_taxonomy函数为我的博客注册自定义分类,该函数有一个参数ep_mask

  

使用一些参数重写URL

,其中一个是split(r.name,'[\.]')[2] Wordpress 声称,当您要为分类网址添加端点时,应该使用它。我只是不明白为什么要添加端点以及它有什么好处。如果有结果的例子可用,那就更好了。

提前致谢

2 个答案:

答案 0 :(得分:2)

端点掩码值用于告诉WordPress某个注册项支持哪种端点添加,以及开发人员可以添加哪些端点 端点到via add_rewrite_endpoint()

默认分类法(据我所知)不提供ep_mask(默认为EP_NONE),但对于自定义分类法,您可以使用自定义EP掩码或其中一个内置分类(例如EP_PAGES)使永久链接结构与其他内容类似。

假设您将ep_mask值设置为EP_PERMALINK | EP_PAGES,则可以使用

注册新端点
add_rewrite_endpoint('json', EP_PERMALINK | EP_PAGES);

反过来,您可以使用json为您的分类网址添加后缀,并且值json可用作$wp_query中的查询变量。然后,您可以使用该值作为检查,以在页面加载时更改查询,模板和其他相关内容。

您可以在此处详细了解端点:https://make.wordpress.org/plugins/2012/06/07/rewrite-endpoints-api/(有点旧,但仍应反映核心如何与端点配合使用。)

答案 1 :(得分:1)

好处是你可以使用非常永久链接的端点。

  

如果你没有指定EP_MASK,那么非常永久链接将不起作用

description of ep_mask in the documentation of register_taxonomy()包含link to an article,详细解释了它。

该文章的引用:

  

如果我们想将我们的端点添加到所有帖子固定链接,我们将使用EP_PERMALINK。对于帖子和页面:EP_PERMALINK | EP_PAGES。对于帖子,页面和类别:EP_PERMALINK | EP_PAGES | EP_CATEGORIES

该文章中有具体的例子:
https://make.wordpress.org/plugins/2012/06/07/rewrite-endpoints-api/