好吧,我一直在做很多挖掘并尝试提出最佳解决方案,并且真的希望在这个问题上提供一些见解和帮助 .
问题:我的网站有一个WordPress /主题/插件组合集,效果很好 . 在WordPress,主题和SEO插件之类的插件之间,网站的 Headers 生成中有很多事情正在发生 .
我有一个模板页面,我希望能够动态更改 Headers . 我不想搞乱整个网站,只是这个模板页面,所以它将显示: dynamic item name " Item Details"为 Headers . 我想也可能也替换元描述,但我应该能够使用与 Headers 相同的方法,所以现在让我们关注 .
示例页面:http://www.ddmsrealm.com/dungeons-and-dragons-database/item-info/?ddoRareItemID=2507&ddoQuestID=352&ddoSeriesID=39 - 具有通用页面 Headers .
模板页面中有一个函数可以获取和构建 Headers . 在这之后我可能需要放入代码来替换已经生成的标签 .
所以问题是如何改变它?
你能用PHP替换生成的标签吗?这可以通过功能来完成吗?这个改变是针对搜索引擎优化,所以我认为由于搜索引擎没有执行JavaScript,Javascript会起作用 . 自定义字段会成为解决方案吗?
我想影响这个模板 . 我需要它为SEO . 我不认为我可以在主题或插件级别执行此操作,因为我只想修改这一页,其余的生成就好了 .
非常感谢您的帮助和见解 .
3 回答
在调用
get_header()
之前尝试挂钩wp_title过滤器 .Edit:) 我看到Yoast插件确实篡改了我的解决方案:)
幸运的是,这是一个简单的解决方案 . Yoast
wp_title
钩子的优先级为15,所以只需在wp_title
函数上设置一个更高的数字 . 看到我更新的答案 .Yoast Headers 过滤器供参考
这是这个问题的最终工作代码 . 以上回复对于使代码非常接近有很大帮助 . 由于这是在页面/脚本之间传递信息,因此需要一个全局变量 .
此脚本现在扫描已在记录集中选择的当前项目,并将其传递给SEO插件 Headers 生成 .
这似乎运作良好,并且是出于搜索引擎优化的原因,但似乎谷歌仍未对这些网页编制索引 . 无论如何,这是一个很好的小技巧,可以覆盖动态页面项目上的默认 Headers 生成 .
如果您碰巧使用像我这样的Yoast SEO插件,这最终对我有用 .
信用到这里:Overriding Yoast SEO Plugin Page Title and META Description