Using the Regular Expression to Replace External Links in WordPr
- 时间:2020-09-19 10:45:07
- 分类:网络文摘
- 阅读:126 次

wordpress-pad
Let’s say we want to put a REL=NOFOLLOW on all external links in your wordpress posts/pages, we can add a filter to parse the content using the regular expression replace function e.g. preg_replace_callback.
1 2 3 4 5 6 7 8 9 10 11 | add_filter('the_content','add_utm_string',999); function add_utm_string($content){ $content = preg_replace_callback('~href\s*\=\s*[\'"](.*)[\'"]~i', function ($matches) { $home_url = parse_url(home_url())['host']; if (stripos($matches[1], $home_url) === false) { return 'href="'.$matches[1] . '?utm_source='. $home_url . '" rel=nofollow'; } return 'href="'.$matches[1].'"'; }, $content); return $content; } |
add_filter('the_content','add_utm_string',999);
function add_utm_string($content){
$content = preg_replace_callback('~href\s*\=\s*[\'"](.*)[\'"]~i', function ($matches) {
$home_url = parse_url(home_url())['host'];
if (stripos($matches[1], $home_url) === false) {
return 'href="https://helloacm.com/using-the-regular-expression-to-replace-external-links-in-wordpress-for-seo-purposes/'.$matches[1] . '?utm_source='. $home_url . '" rel=nofollow';
}
return 'href="https://helloacm.com/using-the-regular-expression-to-replace-external-links-in-wordpress-for-seo-purposes/'.$matches[1].'"';
}, $content);
return $content;
}We add the filter function add_utm_string to the filter the_content. Then we use the PHP preg_replace_callback function that parses the HTML string of the current wordpress post/page, and replaces the hyperlink if it is external.
We use the following to extract the current domain name e.g. helloacm.com of your wordpress site.
1 | $home_url = parse_url(home_url())['host']; |
$home_url = parse_url(home_url())['host'];
Then, we can exclude our own links. Otherwise, all external links will be added “NOFOLLOW” tag and the ?utm_source query parameter. You of course can customize the links building easily.
The PHP preg_replace_callback function takes the first parameter: Regular Expression Pattern, the second parameter is a call back function when pattern is matched, and the third paramter the original string.
This is a useful tweak for your wordpress template (you can add above PHP function to your theme template functions.php) that enhances your wordpress SEO.
–EOF (The Ultimate Computing & Technology Blog) —
推荐阅读:数学家苏步青的自述 关于负数的知识 第15届华杯赛决赛小学组试题解析一(A卷) 第15届华杯赛决赛小学组试题解析二(A卷) 为什么生活中有那么多圆柱体? 石头的体积 梅文鼎与抽屉原理 人体上的尺子 一道行程问题 一道关于比的应用题
- 评论列表
-
- 添加评论