Автоматичне додавання nofollow до всіх зовнішніх посиланнях в постах

  1. Функція wp_rel_nofollow ()
  2. Миша Рудрастих

Так ось, іноді буває, що зовнішні посилання з сайту потрібно закрити через rel = "nofollow" (навіщо? - це вже тема окремого поста), в вордпрессовскіх коментах атрибут проставляється автоматично, там все ок, а от в постах доводиться прописувати його до кожної засланні вручну, ну або завантажити який-небудь плагін для цих цілей.

Перший варіант не підходить через свою нудності, та й що робити в тому випадку, якщо ви не єдиний автор на блозі?

Ну а плагін ... Навіщо використовувати плагін, який можна замінити кількома рядками коду? Ось цього коду:

function true_wp_posts_nofollow_callback ($ matches) {$ a = $ matches [0]; $ Site_url = site_url (); if (strpos ($ a, 'rel') === false) {$ a = preg_replace ( "% (href = \ S (?! $ site_url))% i", 'rel = "nofollow" $ 1', $ a); } Elseif (preg_match ( "% href = \ S (?! $ site_url)% i", $ a)) {$ a = preg_replace ( '/ rel = S (?! Nofollow) \ S * / i', 'rel = "nofollow" ', $ a); } Return $ a; } Function true_wp_posts_nofollow ($ content) {return preg_replace_callback ( '/ <a [^>] + /', 'true_wp_posts_nofollow_callback', $ content); } Add_filter ( 'the_content', 'true_wp_posts_nofollow');

Після вставки цього сниппета в functions.php спробуйте додати кілька посилань в пост і подивитися вихідний код, ось що вийшло у мене:

Функція wp_rel_nofollow ()

Якщо хочете закрити через nofollow все посилання - і внутрішні, і зовнішні - використовуйте функцію wp_rel_nofollow () , Ось приклад коду:

function true_wp_posts_nofollow ($ content) {return stripslashes (wp_rel_nofollow ($ content)); } Add_filter ( 'the_content', 'true_wp_posts_nofollow');

А в коментарях буде зворотний процес, там WordPress навпаки додає всюди rel = "nofollow" за замовчуванням, природно внутрішнім посиланням цей атрибут ні чого.

А в коментарях буде зворотний процес, там WordPress навпаки додає всюди rel = nofollow за замовчуванням, природно внутрішнім посиланням цей атрибут ні чого

Миша Рудрастих

Вперше познайомився з WordPress в 2009 році. З 2014 року мене можна зустріти на WordCamp - офіційної конфе по WordPress, іноді там виступаю. Також в даний час веду курси по WordPress в Epic Skills .

Якщо вам потрібна допомога з вашим сайтом або може навіть розробка з нуля - пишіть мені .

Навіщо?
Перший варіант не підходить через свою нудності, та й що робити в тому випадку, якщо ви не єдиний автор на блозі?
Навіщо використовувати плагін, який можна замінити кількома рядками коду?

Дополнительная информация

rss
Карта