The make_clickable_rel WordPress PHP Filter allows you to modify the ‘rel’ attribute value of automatically created links in WordPress.
Usage
add_filter('make_clickable_rel', 'your_custom_function', 10, 2);
function your_custom_function($rel, $url) {
// your custom code here
return $rel;
}
Parameters
$rel(string) – The current ‘rel’ attribute value for the link.$url(string) – The URL being matched and converted into a link tag.
More information
See WordPress Developer Resources: make_clickable_rel
Examples
Add ‘nofollow’ to All Links
Add ‘nofollow’ to the ‘rel’ attribute of all auto-generated links.
add_filter('make_clickable_rel', 'add_nofollow_to_links', 10, 2);
function add_nofollow_to_links($rel, $url) {
$rel = 'nofollow';
return $rel;
}
Add ‘noopener’ to External Links
Add ‘noopener’ to the ‘rel’ attribute of external links only.
add_filter('make_clickable_rel', 'add_noopener_to_external_links', 10, 2);
function add_noopener_to_external_links($rel, $url) {
if (strpos($url, home_url()) === false) {
$rel = 'noopener';
}
return $rel;
}
Remove All ‘rel’ Attributes
Remove the ‘rel’ attribute from all auto-generated links.
add_filter('make_clickable_rel', 'remove_rel_attribute', 10, 2);
function remove_rel_attribute($rel, $url) {
$rel = '';
return $rel;
}
Add ‘sponsored’ to Specific Domain Links
Add ‘sponsored’ to the ‘rel’ attribute for links to a specific domain.
add_filter('make_clickable_rel', 'add_sponsored_to_specific_domain', 10, 2);
function add_sponsored_to_specific_domain($rel, $url) {
if (strpos($url, 'example.com') !== false) {
$rel = 'sponsored';
}
return $rel;
}
Custom ‘rel’ Attribute Based on URL Pattern
Add a custom ‘rel’ attribute value based on a specific URL pattern.
add_filter('make_clickable_rel', 'custom_rel_based_on_url_pattern', 10, 2);
function custom_rel_based_on_url_pattern($rel, $url) {
if (strpos($url, 'download') !== false) {
$rel = 'download';
}
return $rel;
}