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

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) —
推荐阅读:Best Image Optimizer Plugins for WordPress in 2019 A Blogger’s Guide to Successful Content Marketing in a Saturated 6 Remote Jobs For Supplemental Income 5 Tips When Preparing for a Business Conference Customizing WordPress with Branda by WPMU DEV How to Blog Like Shakespeare Depth First Search Algorithm to Delete Insufficient Nodes in Roo C/C++ Program to Compute the Angle Between Hands of a Clock What Should Your Anti Virus Software Have in Order to Be Effecti The Importance of SEO and How They Improve the Number of Your Cl
- 评论列表
-
- 添加评论