PHP:如何检查preg_replace匹配是否在指定的HTML标记内

时间:2017-10-04 09:36:52

标签: php html wordpress preg-replace

我正在为Wordpress创建一种批量/动态链接插件,其中一个人可以根据匹配的单词(对于搜索引擎优化等)在帖子中动态创建链接。像这样:

add_filter('the_content', 'atg_generate_links');
function atg_generate_links($content) {
    if (is_single()) {
        $pattern = '/(Christmas gifts)/i';
        $replacement = "<a href='#' target='_self'>$1</a>";
        return preg_replace($pattern, $replacement, $content);
    } else {
        return $content;
    }
}

想要匹配<h1> - <h6>标记内或<a>标记内的文字(以防止嵌套的锚标记)。如何检查preg_replace匹配是否在这些或其他特定标记中找到?

感谢您的帮助。

0 个答案:

没有答案