Сегодня хотел поделиться коротким сниппетом для WordPress. Идею я подсмотрел на сайте «Тостер». Кто не знает, это сервис вопросов и ответов для IT-шников. Суть идеи — преобразование url в человекопонятный заголовок. Другими словами, когда пользователь в комментарии отправит ссылку вида http://site.ru/some-page/, WordPress автоматически получит заголовок статьи, на которую ссылаются. Ссылка будет выглядеть простым текстом: Title of post.

Давайте попробуем это реализовать. Сделаю небольшую оговорку. Наш код будет преобразовывать ссылки ведущие только на внутренние страницы текущего сайта. Если в комментарии есть ссылка на сторонний ресурс, он будет выводиться обычным способом.

Кроме того, сделаем еще одну штуку. Если пользователь ввел длинную ссылку на сторонний ресурс, например вида http://site.ru/some-page-with-long-url/, он будет занимать слишком много места. Давайте все такие длинные ссылки укоротим, они будут выглядеть примерно так: http://site.ru/some-...-url/. И еще. Всем внешним ссылкам добавим атрибут nofollow.

Итак, обозначив задачу, приступим к её выполнению. Необходимые комментарии, я разместил прямо в коде. Разместите следующий сниппет в файл function.php:

Если у вас будут идеи доработки, пожалуйста, пишите в комментариях.

1 комментарий к записи

Добавить комментарий