wp_rel_nofollow()
Додає rel=”nofollow” до всіх елементів <a> у переданому тексті. Внутрішні посилання пропускаються.
Якщо посилання внутрішнє (веде на сторінку поточного сайту), атрибут nofollow доданий не буде.
Дивіться також:
Хуків немає.
Повертає
Строку
. Відформатований контент.
Використання
wp_rel_nofollow($text);
-
$text
(рядок) (обов’язковий) - Контент, який може містити теги HTML.
Приклади
#1 Приклад додавання до всіх посилань у тексті атрибуту rel=”nofollow”
$text = 'Людині потрібний сміх, як квітці сонячне світло. Якби сталося так, що сміх вимер, людство перетворилося б у зоосад чи суспільство ангелів - стало нудним, похмурим і застигло у величній байдужості. Читайте роман Джеймся Крюса: <a href="http://flibusta.net/b/162259">Проданий сміх</a>.'; $text = wp_rel_nofollow( $text ); echo $text; // Отримай посилання: // <a href="http://flibusta.net/b/162259" rel="nofollow">Проданий сміх</a>.
#2 Додамо всім зовнішнім посиланням у контенті атрибут nofollow
add_filter( 'the_content', 'true_wp_posts_nofollow'); function true_wp_posts_nofollow( $content ){ return stripslashes(wp_rel_nofollow($content)); }
#3 Покращимо обробку зовнішніх посилань.
Закриємо зовнішні посилання в контенті від індексації та додамо target="_blank"
.
add_filter( 'the_content', 'external_links_sanitizer'); function external_links_sanitizer( $content ){ $content = wp_unslash( wp_rel_nofollow( $content ) ); $content = str_replace( 'rel="nofollow"', 'target="_blank" rel="nofollow noindex noopener"', $content ); return $content; }
список змін
З версії 1.5.0 | Введено. |
Код wp_rel_nofollow() wp rel nofollow WP 6.0.2
function wp_rel_nofollow( $text ) { // Це є Pre-Save Filter, так що текст є ще escaped. $text = stripslashes( $text ); $text = preg_replace_callback( '|<a(.+?)>|i', static function( $matches ) { return wp_rel_callback( $matches, 'nofollow' ); }, $text ); return wp_slash($text); }