这更像是一个概念性问题,但它有实际的影响。
通过各种搜索引擎优化插件,我发现一个PHP标签应该嵌入到实际的HTML页面中并回显元数据。它是如何工作的?
简单地将其保存到数据库似乎不够。插件将SEO数据“注入”页面的机制是什么?如果我在页面中有自己的meta
标记怎么办?它会覆盖插件吗?
答案 0 :(得分:2)
这些机制通常来自wordpress FILTERS
的ACTIONS和Plugin API个问题这不是特别针对SEO插件,而是针对几乎所有改变实际内容的插件。
简单地说:
动作挂钩
动作Hooks是在WordPress核心本身时使用的设计,某些插件或主题为您提供了一个特殊的“断点”来插入代码以执行某些操作,或者在触发某个操作时更改某些内容。
过滤钩:
Filter Hooks与Action Hooks非常相似,但他们所做的是接收一个值并可能返回该值的修改版本。
更新我
看到这个简单的例子(放入你的主题的function.php
add_filter( 'the_content', 'my_the_content_filter' );
function my_the_content_filter(){
echo ':::::: THIS CONTENT WILL BE ADDED TO ANY POST :::::';
}
或者这个:
add_filter( 'the_title', 'my_the_title_filter' );
function my_the_title_filter(){
echo ':::::: THIS CONTENT WILL BE ADDED TO ANY TITLE :::::';
}
更新II
但是,如果您的问题实际上是关于SEO如何工作,而不是插件本身: 搜索引擎优化是一个很大的主题,但简单地说,它是关于元标签,标题,描述,链接,相关等...这是SEO插件正在改变。
他们改变了诸如 -
之类的东西 .. - 但他们都使用上面提到的 actions
和filters
挂钩的机制。您在代码中看它的事实是,您不知道要查找的内容。
尝试在插件激活之前和之后保存页面源,然后在两者上执行diff。你会看到差异......