【发布时间】:2019-12-18 10:12:37
【问题描述】:
我正在开发一个自定义插件,它需要在不使用页面模板的情况下动态更改帖子标题(不是头部的“标题”标签)。
我希望插件的最终用户能够使用他们自己的主题模板,这些模板已经输出了标题,通常在 h1 标签中,但我不知道在哪里以及如何确定,因为它不是我的主题。
我只需要更改前端的输出,而不是数据库中的输出。我想根据 url 的查询字符串是否匹配某些值,或者前端用户是否登录来更改它。我知道如何通过自定义模板执行此操作,但我想通过用户已经选择的模板执行此操作。
我注意到,如果我过滤 the_title(),它会在管理仪表板和前端导航菜单中的任何地方更改它,这是我不想要的,我只想更改它在用户页面中的输出位置模板(通常在 h1 标记中).... 有没有人对如何进行此操作有任何建议?
【问题讨论】:
-
在更改标题之前使用is_admin()函数检查用户是否在管理区域(例如
if ( ! is_admin() ) { /* Do your thing */ })。 -
@cabrerahector,即使 !is_admin 返回 true,当我过滤标题时,它也会在前端的导航菜单中过滤它,而不仅仅是在模板的 h1 标签中
标签: wordpress wordpress-plugin-creation