Останнім часом мене все частіше відвідує бажання змістити в сторону звалища плагін All in One SEO Pack і його «близнюка» platinum SEO Pack. які я використовую для СЕО оптимізації.
На деяких своїх сайтах я вже від них позбувся, зокрема на цьому. Чому? Тому що, більша частина їх функціональності майже завжди залишається без роботи, наприклад, 301 редирект. Також, не дуже подобається, як генерується опис (description) і кейворди (keywords). Заглянувши в код, бажання поріднити ці плагіни зі звалищем стало міцніше, тому що все це можна зробити простіше, підредагувавши header.php.
Однак, не хочу нікого вводити в оману, що ці плагіни сильно навантажують систему, що це якісь монстри від яких краще позбутися. Ні, це не так: вони гарні і ними дуже навіть можна користуватися!
У цій статті я спробую відповісти на питання: чи є об'єктивні причини відмовитися від вищезазначених СЕО Плігін і яка жертва? Також, я постараюся докладно розглянути обидва плагіна, щоб прояснити для себе і вас, чому ж конкретно ці плагіни займаються і в чому їх відмінності. Для початку я вирішив детально розібратися в тому, що входить в їх завдання і які з функцій вкрай важливі, ніж їх можна замінити, щоб позбавиться від них. А також, порівнюючи функціональність, можна зрозуміти, чим відрізняються ці плагіни і який плагін краще. Розглянемо можливості, які описуються розробниками цих плагінів:
Platinum SEO Pack
Автоматичний 301 редирект при зміні постійних посилань (урлов) - (немає в All in one SEO);
Можна міняти структуру постійних посилань (permalink). При зміні структури постійних посилань плагін автоматично створює 301 редирект на нове розташування сторінок, таким образо весь ПР повинен перетекти на нові сторінки. (Немає в All in one SEO);
Канонічні URL'и (rel = 'canonical' в метатегах, докладніше можете прочитати тут). Допомагає уникнути дублювання контенту;
Настроюється автоматична генерація мета заголовків у постів і сторінок;
Автоматична генерація всіх SEO тегів ** (title, discription, keywords) **;
Можливість вимкнути, метазаголовкі у певних посад або сторінок;
Налаштувати формат мета заголовка (title) у постів або сторінок;
Можливість переписати заголовок (title), ключові слова (keywords) і опис (description) для посад і сторінок;
Сумісний з багатьма плагінами, такими як like Auto Meta. Ultimate Tag Warrior і іншими;
Додає index, noindex, follow or nofollow, noodp, noydir, noarchive, nosnippet мета теги до постів і сторінок. (Немає в All in one SEO).
All in One SEO Pack
Просунуті Канонічні URL'и (у чому "просунутість" незрозуміло);
Використовує свої фільтри, які виступають як API. Завдяки цьому інші плагіни або теми можуть розширювати функціональність плагіна;
Єдиний плагін, який підтримує СЕО інтеграцію для WP e-Commerce сайтів;
Nonce захист (такий захист використовується повсюдно в WordPress - принцип одноразового використання ключів);
Автоматично генерує мета заголовок (Title);
Генерує інші мета теги (description, keywords);
Запобігає дублюванню контенту, характерного для WordPress;
Можна встановлювати мета заголовки (title), опис (description) і ключові (keywords) слова для кожного запису / сторінки.
Сумісний з плагінами, такими як like Auto Meta. Ultimate Tag Warrior і ін.
Жирним виділені ті моменти заради чого плагін створювався в першу чергу. Деякі з які хотілося б реалізувати самому, без використання плагіна. Сірим виділені не особливо потрібні, на мій погляд, можливості, від яких можна відмовитися.
Тепер, порівнюючи ці два плагіна, мабуть, можна сказати, що більш функціональним є platinum SEO Pack (за винятком деяких пунктів), хоча обидва плагіна дуже схожі.
Довільні поля, в які плагін All in One SEO Pack записує: заголовок, опис і ключові слова:
aioseop_title
aioseop_description
aioseop_keywords
Переваги platinum SEO Pack над All in One SEO Pack:
Є можливість налаштувати опис (description) і ключові слова (keywords) окремо для кожної рубрики і мітки;
All in One SEO Pack за великим рахунком перевагами не володіє, єдине - це пункт 3 - інтеграція з e-Commerce. Все інше: nonce захист, API і т.д. не так важливі. Що стосується функції канонічних URL (присутній в обох плагінів), цей мета тег canonical вже реалізований в самому WordPress, починаючи з версії 2.9.
Чи знаєте ви?
[Description] Опис рубрики, яке потім буде відображатися в мета description [/ description]
Після цього у рубрики автоматично з'являться мета поля: description і keywords.
Налаштування platinum SEO зберігаються кожна окремо, тоді як у All in One SEO зберігає всі настройки в масиві (кращий варіант).
Альтернатива SEO плагинам
Тепер, перейдемо до того, що потрібно зробити, щоб відмовитися від цих плагінів.
Скажу відразу, якщо ви зовсім не розбираєтеся в PHP, то все що нижче вам навряд чи стане в нагоді. Використовуйте плагін - це вам буде зручніше.
Обидва ці плагіна створювалися заради 3-х основних речей:
Перезапис мета Заголовків;
Генерація description і keywords;
Код заміни для title, description, keywords, robots
Тепер, заміна плагіна зводиться до реалізації трьох пунктів, ніж ми зараз і займемося.
Викладу відразу, що вийшов у мене код, який реалізує всі ці три пункти, що до чого пояснюється відразу в коді.
підключення
Щоб код почав працювати його потрібно скопіювати в файл теми functions.php.
Інший варіант підключення без functions.php
Якщо з якої-небудь причини потрібно підключити функції безпосередньо.
Розміщуємо код вище в файлі теми functions.php.
цим рядком ми замінюємо існуючий в header.php заголовок, приблизно такий (з default теми):
У header.php в head частини викликаємо функції:
Замітка для версій WP 4.4. і вище
З версії 4.4. в WP елементів таксономії можна створювати метапол і код з зазначеної статті використовує їх, а не шорткоди.
Такі метапол додати дуже просто і це зручніше ніж шорткоди.
Щоб додати метапол description і keywords до термінів використовуй приклад з хука taxonomy-_edit_form_fields.
Далі, код з цієї статті зробить все сам.
Можливі проблеми: перезапис заголовків
Перезапис потрібна, якщо для новин ви хочете використовувати заголовки відмінні від назви посади / сторінки і з урахуванням деяких особливостей. Наприклад, заголовок у сторінки навігації з позначкою яка за рахунком ця сторінка і т.п. Вся структура реалізовується, грубо кажучи, двома функціями WP wp_title () і get_bloginfo ( 'name') з впровадженням умов.
Статті до цього: SEO