Як правильно видалити версію WordPress

У цьому мануалі я покажу вам правильний спосіб видалення метатегу generator, який WordPress вставляє в head частину HTML документа та код фідів. Також тут я згадаю про інші про інші метатеги, які за умовчанням вставляються в документ і які, можливо, теж потрібно видалити.

Видалення версії WordPress корисне з метою безпеки, особливо якщо ви користуєтеся старими версіями движка. Тому що хакери можуть скористатися цією інформацією. У багатьох старих версіях WP є свої "дірки". Якщо ви використовуєте останню версію WP, то вам не потрібно використовувати цей мануал. Однак, до речі, я завжди видаляю WP версію на своїх сайтах, незважаючи ні на що.

"Як щодо плагіна?" - Запитайте ви. Так, плагіни, які видаляють версію WP, існують, однак це настільки просте завдання, що плагін краще не використовувати.

Де відображається версія WordPress?

Відкрийте вихідний код сторінки (ctrl+u), натисніть ctrl+f (пошук) та впишіть слово для пошуку "generator". У частині документа ви маєте побачити рядок:

де замість х.х.х ваша версія WordPress. Наприклад, 3.1.3

Примітка: якщо такого рядка немає у вашому коді, то тема, яку ви використовуєте, вже видаляє версію.

Видалення метатегу generator

C версії 2.5 WordPress автоматично відображає версію движка в head частини документа. Версія виводиться там, де використовується функція wp_head(). Ця функція викликається прямо перед тегом, що закриває, і використовується плагінами для підключення стилів і скриптів.

Я зустрічав у мережі, де видаляти версію рекомендується через фільтр wp_head. Для цього потрібно додати такий код у functions.php вашої теми:

Проблема такого видалення полягає в тому, що інформація про версію видаляється лише з веб-сторінок сайту. Якщо ми подивимося вихідний код фіда попосилання http://ваш_сайт/feed ми побачимо там схожий метатаєг:

Щоб повністю видалити версію WP з веб-сторінки та зі сторінок фідів, додайте наступний код у файл теми functions.php:

Примітка: також не забудьте видалити файл readme.html у кореневому каталозі WordPress. Цей сайт легко можна відкрити в браузері і на самому його початку вказується версія движка.

Крім того, що WordPress додає метатег generator, він також додає версію в кінець посилання на css стиль або js скрипт, що додається, у тому випадку якщо версія скрипта або стилю не вказана. У цьому прикладі наприкінці можна побачити версію WP.

Щоб видалити версію з усіх посилань, на стилі та скрипти, додайте такий код у файл functions.php:

Однак цей варіант видалити всі параметри ver без розбору, WP версія або версія плагіна.

Щоб видалити лише версію WP, використовуємо такий скрипт:

Що можна видалити ще з wp_head

Хук-подія wp_head спрацьовує всередині HTML блоку. Сюди крім метатегу "generator" WordPress за умовчанням додаємо ще багато чого. Щоб дізнатися, яка функція відповідає за який рядок, вам потрібно відкрити файл wp-includes/default-filters.php і переглянути всі функції, прикріплені до події wp_head.

Щоб видалити функцію, вам потрібно використовувати функцію remove_filter() в якій вказати фільтр і назву функції, яку потрібно видалити. Наприклад, видалити функцію feed_links: