SEO
Эдуард Шевелев
3613

О SEO блогах на WordPress

В этой статье поведаю о зеленых попугаях в PageSpeed Insights и попаданием в топ Яндекса. Проведен эксперимент.

В закладки

За основу я взял шаблон Reboot от команды WPSHOP (не реклама, раньше всегда использовал темы root, pluto или верстал сам).

На новом шаблоне изменил под себя дизайн, немного дописал CSS.

В шаблоне снёс подключение Google шрифтов, поставил свои библиотеки на хостинг, обязательно подключение шрифта с параметром font-display: swap;.

Проверка валидации показала предупрждение в подключении скриптов и стилей: для HTML5 считается устаревшим параметр "text/javascript" и др., решается добавлением в function. php шаблона (работает в большинстве случаев):

add_action( 'template_redirect', function(){
ob_start( function( $buffer ){
$buffer = str_replace( array( 'type="text/javascript"', "type='text/javascript'" ), '', $buffer );
$buffer = str_replace( array( 'type="text/css"', "type='text/css'" ), '', $buffer );
return $buffer;
});
});

Валидация успокоилась. Эдуард Шевелёв / shevelev.design

Далее подключаем модули:

Clearfy Pro - известность. Пришел на смену модуля MFP mod, кстати тоже еще актуален). С помощью него удаляется весь мусор из WordPress. Модуль проставляет заголовки Last Modified, удаляет JSON, jquery-migrate.min.js, производит минификацию HTML и много-многое другое полезное для SEO. Конечно, все это можно сделать вручную через function.php.

Yoast SEO - классика. Кроме разметки и мета, использую для генерации карты сайта. У Yoast есть дополнения для WooCommerce, пример работающего магазина на данном модуле - wpnull.org и еще миллионы сайтов. О All in One SEO Pack плохого ничего не могу сказать, но шаблоны делают под Yoast.

Really Simple SSL - позволяет настроить SSL и HSTS в один клик, либо все делаем без модуля в .htaccess. Включить редирект HTTPS на сайте - это верхушка айсберга защищенного соединения.

WP-Optimize - оптимизация и чистка БД, кеширование сайта.

Webcraftic Robin image optimizer - этим делом сжимаю изображения на всем сайте, доступна конвертация в WebP.

Яндекс.Турбо - тут понятно, использую только для статей, они сразу попадают в Яндекс после публикации и доступны в облегченной турбо версии сайта для мобильных устройств.

Если бы мне нужен был бы слайдер, я бы его скачал с CodePen или GitHub. Но не пользовался бы Slider Revolution, модуль крутой, но меня удобство не интересует, главное скорость, все через код. Contact Form 7 тоже выкинуть, свою PHP форму поставить и пусть работает на нужных страницах, а то подгружает свои библиотеки глобально.

Карта robots.txt сделана вручную, с учетом WooCommerce:

User-agent: *

Disallow: /cgi-bin

Disallow: /cart/

Disallow: /checkout/

Disallow: *?filter*

Disallow: *?add-to-cart*

Disallow: */trackback

Disallow: */feed

Disallow: /*attachment*

Disallow: */embed*

Disallow: */wp-json*

Disallow: /?

Disallow: /wp-

Disallow: /*?s=

Disallow: /*?

Disallow: /?s=

Disallow: /*&s=

Disallow: /search

Disallow: /author/

Disallow: /xmlrpc.php

Disallow: /readme.html

Allow: /wp-*.png

Allow: /wp-*.jpg

Allow: /wp-*.jpeg

Allow: /wp-*.gif

Allow: /wp-*.svg

Host: ДОМЕН

sitemap: КАРТА САЙТА

Для HSTS в .htaccess обязательно max-age=31536000

<IfModule mod_headers.c>
Header set Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" env=HTTPS
Header always set X-XSS-Protection "1; mode=block"
Header always set X-Content-Type-Options "nosniff"
Header always set Referrer-Policy: "no-referrer-when-downgrade"
</IfModule>

Остался jQuery, на который постоянно жалуется Google. Встроенная в ядро библиотека jQuery WP подключается в файле wp-include/script-loader.php. Если это не предусмотрено шаблоном, как в нашем случае. Переносим jQuery в футер, используем команду:

function jquery_mumbo_jumbo() {

wp_dequeue_script('jquery');

wp_dequeue_script('jquery-core');

wp_dequeue_script('jquery-migrate');

wp_enqueue_script('jquery', false, array(), false, true);

wp_enqueue_script('jquery-core', false, array(), false, true);

wp_enqueue_script('jquery-migrate', false, array(), false, true);

}

add_action('wp_enqueue_scripts', 'jquery_mumbo_jumbo');

jQuery блокирует отрисовку, особенно на мобильных устройствах, Google хамит на эту библиотеку. Если это не мешает загрузке контента на сайте, убираем в футер.

*Замечу, что шаблон уже в основном оптимизирован разработчиками, не использует тяжелых фреймворков и билдеров. В коде нет латиницы. Если Вы берете шаблон из themeforest, крайне рекомендую удалять неиспользуемый CSS и JS вручную, перекидывать скрипты в футер вручную (увеличиваем скорость отрисовки контента) и т.д. Не использовать плагины для автоматической оптимизации и сжатия кода. Обычно на темах навешено 100500+ плагинов, которые подгружают свои библиотеки на всем сайте, да и style.css наполнен 30ью демо-сайтами. Как по мне, любые автоматические оптимизаторы зло, да еще и реклама в коде. Максимум плагин для кеширования и работы с БД.

Что получилось?

Для эксперимента собрал статью о procreate, полтора месяца назад ключ "procreate photoshop" собирал 1500 запросов/мес. Страница сразу оказалась в топе и уже долго там находится.

Статья в поиске Эдуард Шевелёв / shevelev.design

Помимо этого

Представление в поиске внутри Эдуард Шевелёв / shevelev.design
Представление в поиске снаружи Эдуард Шевелёв / shevelev.design
PageSpeed Insights Эдуард Шевелёв / shevelev.design
HSTS stspreload.org Эдуард Шевелёв / shevelev.design
pingdom.com Эдуард Шевелёв / shevelev.design

На сайте нет семантического ядра, разнообразный контент на любые темы.

Хостинг: самый дешевый тариф Бегет, у них кстати сейчас PHP 7.4. Хостинг тоже тестирую, до этого пользовался МакХостом без проблем. Пока Бегет радует каждый день падением сайта и потерей соединения с сервером БД. Раньше такого не было:(

CDN на сайте не используется, выделенный IP тоже. Всегда спасает кеш при недоступности сайта. Есть еще много доработок, занимаюсь.

{ "author_name": "Эдуард Шевелев", "author_type": "self", "tags": [], "comments": 18, "likes": 7, "favorites": 128, "is_advertisement": false, "subsite_label": "seo", "id": 131791, "is_wide": false, "is_ugc": true, "date": "Wed, 03 Jun 2020 18:49:58 +0300", "is_special": false }
Маркетинг
Как за месяц радикально увеличить посещаемость ювелирных магазинов?
В январе 2020 года Станислав Ильин, руководитель направления электронной коммерции Адамаса, сформулировал перед нами…
Объявление на vc.ru
0
18 комментариев
Популярные
По порядку
Написать комментарий...
5

За модули спасибо! Интересно

Ответить
3

Смысл статьи в рекламе плагинов, все вышеперечисленное делается руками, ну кроме Yoast SEO

Ответить
2

Спасибо за плагины. Посмотрю.
Мне больше нравится делать на теме Divi.
По поводу "топ Яндекса" - мой новый сайт через 2 недели на первом месте без рекламы. Ссылки не будет, т.к. не реклама ))
Все сайты лежат на свебе (sweb.ru). Отлично работают + техподдержка не бросает, даже если у автора кривые руки )
Мои плагины:
Classic Editor
Code Snippets
Envira Gallery
JivoSite
MFP mod WP
Site Kit от Google
Wordfence Security
Yoast SEO Premium
Уведомление о куки
Яндекс Метрика
—--—--—--—-
Давайте поделимся многолетним опытом и выложим темы и плагины!

Ответить
2

Раз уж вы так обожаете плагины, не забывайте ВОВРЕМЯ обновлять, хотя это помогает всего лишь в половине случаев,зависит от авторства уязвимости.
Ну а если сайт отдан заказчику, то обновлениями там точно не пахнет, редкий владелец сайта вообще в админку заходит...
Моё решение - вообще не ставить плагины, мой список - редко один, очень редко два плагина...
Например, вот про апрельскую дырку плагина из вашего списка - https://www.wordfence.com/blog/2020/05/vulnerability-in-google-wordpress-plugin-grants-attacker-search-console-access/
И т.д...
Плагин Живосайт. Ну ёмае)))

Ответить
1

Спасибо

Ответить
0

Ещё раз спасибо за советы. Живосайт удалён ))
По поводу кодить ручками. Моих знаний хватает только на установку плагинов и нажатия кнопки активировать )
Пока этого хватает для несколькостроничных статичных сайтов.

Ответить
1

"Пока Бегет радует каждый день падением сайта и потерей соединения с сервером БД" - и так будет вечно, увы.

Ответить
3

У меня тоже ничего на бегет не падает

Ответить
2

Хватит про beget херню сочинять🤣🤣🤣 ниче нигде не падает и не пропадает. Если руки из жопы, нехер на зеркало пенять! 

Ответить
1

Трафик на страницу каждый день идет и не только по одному ключу (только зашел в метрику). Смысл статьи не в супер-SEO стратегии сайтов на WP, а именно оптимальной базовой настройке блога, который будет красиво отображаться в Яндексе и выходить легко в топ по НЗ запросам. Если мы возьмем супер конкурентные сферы, тут не обойтись молодым сайтиком и плагинами. Я не гипер-сеошник, не копирайтер. Публиковал статью в "личный опыт" и больше занимаюсь дизайном. Но имея жалкий блог, абсолютно бесплатно по НЗ можно выйти на какой-то естественный трафик. 

Еще в 2018 по такой схеме новый сайт за 5 часов попал в топ, на только-что созданном домене. 

Это реально работает, частично практикуется в проектах пузата (но там они не вмешиваются в код, чисто плагины ставят, "и так сойдет").

Ответить
4

Пузат и его курсы это помойка. Найдите его пост на фб, в котором он продает все свои проекты на телдери и посмотрите их, и цены на них. Типичный инфоцыган.

Ответить
2

Есть еще один вариант обрезки лишнего дерьма из коробки, называется:
 Must-use plugins (a.k.a. mu-plugins)

Почитать тут:

Ответить
2

Странно слышать в одном тексте про оптимизацию для гугла и Yoast SEO...
Он у вас совсем не мусорит в исходном коде?
Он не нагружает сервер сотнями запросов?
Возможно у вас на сайте десяток страниц?

"Кроме разметки и мета, использую для генерации карты сайта."
Разметка - это 18 строчек в шаблоне (схемы Article, крошки, меню).
Мета-теги - это 45строчек в functions.php
Карта сайта  - банальный get_posts с аргументами, 14 строчек в шаблоне.
При этом все на автомате плюс шаблоны для мета-тегов если надо. Покажи автокейвордсы в Yoast???

Я первым вопросом клиенту спрашиваю, НАФИГА у вас установлен Yoast, отвечают99% именно так как вы пишите - для мета тегов))) за бортом остается 85% функционала.

Выпиливание джиквери в твоем варианте - -сначала разрешаем движку подгрузить джиквери, затем ПЛАГИНОМ выпиливаем сформированный код. Норм, чо...

Ответить
2

Эдуард, здравствуйте!

Посмотрели ваш тикет и аккаунт. Проблемы были вызваны вредоносной активностью на сайтах, которые размещаются рядом с вашим аккаунтом на этом сервере виртуального хостинга. Нам жаль, что вы столкнулись с подобной ситуацией. На новых серверах shared-хостинга, где открыта регистрация, подобные ситуации могут неизбежно встречаться. Дело в том, что когда на сервере размещаются сайты новых клиентов, некоторые из них могут потреблять множество ресурсов (порой десятикратно, а то и стократно превышающие допустимые лимиты) или сайты на которые ведётся DDoS. О проблемности попадающих на сервер сайтов можно узнать только по факту и по проявившейся проблеме. Поэтому администраторы 24/7 мониторят такие случаи. Иногда случается, что быстро устранить нет возможности или ситуация повторяется, но уже с сайтом на др. аккаунте. Но наши специалисты следят за этим и решают их как можно быстрее, чтобы сайты работали исправно.

На данный момент сервер с вашим аккаунтом работает стабильно. Если что-то пойдет не так - обращайтесь в тикет или любым удобным способом, поможем.

Ответить
0

Спасибо! Да, сейчас стабильно работает. У Вас раньше не было подобных проблем, сам в шоке. Я подключал к Вашему хостингу большое количество своих клиентов, создавал сайты на бегете, все на протяжении 4 лет и ни одной проблемы. 

Ответить
1

Такой себе эксперимент на одном сайте. И на одном key. 

Ответить
0

Соглашусь со всем. Полезный авторитетный ответ, спасибо.

Конечно Yoast большой комбайн с широким функционалом для работы с тысячами страниц в приятном интерфейсе без кода для всех желающих, который наверно должен не простаивать, и  нет смысла ставить ради десяточка страниц. Мета можно вручную написать в хедере шаблона, да и карту сайта сгенерить. Не забываем о комментарии кода с рекламой Yoast. И нагрузке при генерации страниц. НО если мы не используем кеш. При кешировании сайта, генерации и обращении к БД быть не должно, сделать предзагрузку всех страниц заранее в общей базе, сайт будет открываться с отдельной папочки CASH уже в сжатом виде со всеми мета, твиттерами, фейсбуками, текстами, заголовками, картинками... Я говорю сейчас о сайте без активных виджетов, о простом блоге,  где нет надобности что-то искать в БД, там где контент постоянный и статичный, без мультирегиональности, геолокации, активных слайдеров с товарами и т.д. Например, при использовании CDN, все страницы уже созданы и распространяются кешем по серверам. 

В принципе, все можно сделать руками вместо плагинчиков.  Да и зачем WordPress, когда можно и на html блог сделать, это будет еще быстрее. Я поверхностно написал статью, здесь описаны самые быстрые, простые и дерзкие способы. 

JQuery это широкий вопрос. Если использовать предзагрузку всех страниц в кеше,  у нас получается одна статика без обращений к БД и работы движка WP. JQuery если он нужен, например для анимации, прописываем библиотеку в футере, которая непосредственно будет в статике, главное чтоб внешний вид был в балансе со скоростью загрузки. А вот админка уже не статика, как и WooCommerce, здесь совсем неактуально хождение по кругу загрузки и работы скриптов. Но если библиотеку просто удалить из WP, тогда ее надо вставлять вручную в админку. Каждая ситуация уникальна, функция по JQuery взята с stackoverflow https://stackoverflow.com/questions/35663927/wordpress-jquery-on-footer

Ответить
–1

«Еще в 2018 по такой схеме новый сайт за 5 часов попал в топ, на только-что созданном домене.»

Ну как бы вот..... думаю остальное ветер)))

Ответить

Блоги компаний

Показать еще

Комментарии