SeoPack - сео-плюшки в одном месте.



Несколько лет назад мною было написан «пакет для ленивых менеджеров» SeoPuck, а как известно, как корабль назовешь, так он и поплывет. И на некоторых проектах он, конечно, зашел, но в целом участью этого «пука» стало забвение.
Тем не менее время шло, сеошники просили новые плюшки, которые я разбрасывал по проектам, ну а тут решил их объединить в единое решение. Многие вещи уже мною публиковались, но есть и некоторые новшества. Основное это то, что вынес все настройки в модуль, что народу вроде как нравится, ибо прописывать конфиги он ленится. Ну и еще ряд дополнений о которых ниже.

Итак.

Общие настройки.

Вначале три проверки: на то не забыли вы врубить карту сайта, сделать отдельную страницу для ошибки 404 и переименовать simple-robots.txt Еще там предполагается проверка на наличие записей о хосте и карты сайта, но чуть по-позже сделаю.

Далее работа с картинками.
Автоматическая простановка альтов к картинкам если они пусты, использование webp формата для картинок (необходимо установить WebPConvert).

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

Faviocon. Тут можно его через модуль вставлять, можно использовать сниппет FaviconGenerator. Как удобней.

Прочее.
Вытягивание кода в одну строку, отслеживание изменение файлов (чтобы не просить клиентов скидывать кэш), подстановка canonical для страниц, в коде которых есть класс paginate и отдача 304 кода роботам.

Массовое изменение полей.

Суть — почему-то забытый Doc Manager. Если честно только при написании статьи вспомнил о том, что он кода-то был)

Короткие ссылки.

Штукенция для следующего финта: на страницах с фильтрацией получается весьма большая ссылка, которую не всегда удобно и лаконично использовать при пересылке или если на нее дается контекст. Поэтому билиберду с кучей знаков вопроса и амперсандами можно подменить на что-то маленькое и удобное.

Карта перенаправлений.

Тут все просто: тот же самый redirectMap, только не в чанке, а в модуле. Большинству пофиг, а манагеров прет)

Ну и бонусом редактирование robots.txt — опять же, абсолютно не моя прихоть, а желание некоторых криворуких сеошников.

В перспективе локализация (задел есть), bugfix, постепенное добавление новых плюшек. С учетом того что логика тут простая, может быть найду время и запихну все это в модуль Revo, если у кого-то будет интерес. А может, как всегда, отложу все это в долгий ящик) Надо еще несколько решений допилить)

Скачать можно на github.
  • avatar
  • 3
  • +5
  • 803

14 комментариев

avatar
Прикольная штука, для полного комплекта не хватает микроразметки и open graph, как вариант для расширения)
avatar
да была у меня эта мысль, но не помню почему я решил ее отложить… По-моему потому что заказов навалилось) Еще мысль, которую точно сделаю: записывать в таблицу редиректов документы у которых изменились адреса в силу переноса в другую папку, изменения алиасов и т.д.)
avatar
После установки с захода в модуль пишет, что данный файл не существует — assets/modules/seopack/configs/general.config.php
Как его создать или он должен автоматом создаться?
avatar
а строчка на какую ругается?
avatar
47 строка
Для коротких ссылок — на 563
avatar
Не совсем понял про строчку 47, 563 поправил. На релиз просто выкинул готовые конфиги чтобы обновы нормально шли, мог пропустить что-то.
avatar
с гитхаба скачал, но так же ругается на 563 строку
avatar
поправили.
avatar
Ставил на чистую 1.4.9., качал как download zip с гита.
1. Короткие ссылки. Сразу ошибка:
Fatal error: Uncaught Error: Function name must be a string in /assets/modules/seopack/seopack.module.php:563 Stack trace: #0 /manager/processors/execute_module.processor.php(79) : eval()'d code(14): include_once() #1 /manager/processors/execute_module.processor.php(79): eval() #2 /manager/processors/execute_module.processor.php(62): evalModule('/**\r\n * SeoPack...', Array) #3 /manager/index.php(611): include_once('/home/users/0/0...') #4 {main} thrown in /modules/seopack/seopack.module.php on line 563

2. «Сохранить» не работает. Причём ошибок в консоли не замечено. Да и не должна, т.к. в ней стоит
href="javascript:;"
и эвентов нет. Такое чувство что js должен быть, но его нет =)
  • 1px
  • 0
avatar
563 строчку поправил, спасибо Володе
На счет js — так внизу же все.
avatar
Приветствую! Поставил модуль на 1.4.10. Скачал с github
Кнопка СОХАНИТЬ тоже не работает — не сохраняет никаких изменений.
  • tmih
  • 0
avatar
Github не позволяет создавать пустые папки, я этого не знал(. Нужно создать папку /assets/modules/seopack/configs — тогда все заработает. Сегодня в гит внесу правки
avatar
собственно уже.
avatar
Все заработало, УРА!!! :)
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.