Функции WordPress

Автоматические кликабельные ссылки в комментариях WordPress и плагин ВП Типограф Лайт

Привет, ребята. Давненько я не писал ничего интересного в рубрику WordPress. Но вот на прошлой неделе возникла небольшая проблема, решением которой я и хотел бы поделиться.

В чем суть — мне надоело, что в комментариях к посту ссылки, начинающиеся с http:// и www. автоматически становятся кликабельными и от них иногда что-нибудь да отрезается. Это, конечно, круто, но когда тебе надо показать кусок кода или что-то подобное, то возникает проблема, которая иногда не решается даже тегами <pre> и <code>.

Решил загуглить «убираем автоматические ссылки из комментариев wordpress». Нашел, казалось бы, простое решение:

Чтобы раз и навсегда отбить охоту у WordPress делать такую медвежью услугу, достаточно в файле functions.php шаблона прописать в пределах вот такую незамысловатую строку:

remove_filter('comment_text', 'make_clickable', 9);

И автоматических ссылок как не бывало. Enjoy!

Оказалось не все так просто, «гениальное решение» не помогло. Пришлось разбираться дальше.

Я решил сразу же пробежаться по списку установленных плагинов, ведь чаще всего из-за них и возникают разного рода проблемы. И я не ошибся, в описании плагина «ВП Типограф Лайт» была строчка «кликабельные ссылки в комментариях». Что ж, копаться в коде не впервой!

Нам понадобится один единственный файлик: /wp-content/plugins/wp-russian-typograph/wp-russian-typograph.php
Чтобы говорить об одном и том же, определим актуальную версию плагина на данный момент – 2.3.5
Все что нам надо сделать – закомментировать три строчки: 386, 387, 390. Вот так это в итоге будет выглядеть:

		//кликабельные ссылки
		//$text=preg_replace("~(^|\s|-|:| |\()(http(s?)://|(www\.))((\S{25})(\S{5,})(\S{15})([^\<\s.,>)\];'\"!?]))~i", "\\1<a href=\"http\\3://\\4\\5\">\\4\\6...\\8\\9</a>", $text);
		//$text=preg_replace("~(^|\s|-|:|\(| |\xAB)(http(s?)://|(www\.))((\S+)([^\<\s.,>)\];'\"!?]))~i", "\\1<a href=\"http\\3://\\4\\5\">\\4\\5</a>", $text);
 
		//убираем / в конце ссылок без вложенности
		//$text = preg_replace( "~(<a[^>]*>[^\/]+)\/<\/a>~", "$1</a>", $text );

Все, отныне ссылки в комментариях никак обрабатываться не будут.

Проблема решена, можно радоваться, но это еще не все. Я бы хотел поговорить о плагине ВП Типограф Лайт.

Типограф Лайт для WordPress

Страница плагина на сайте разработчика находится здесь: http://iskariot.ru/wordpress/typo/ увы, сайт больше не существует :(

Краткое описание: Легкая версия типографа только с основной функциональностью (рекомендуется для большинства блогов) — обработка кавычек, тире, спецсимволов вне безопасных блоков (pre, code, samp, textarea, script), правка кавычек внутри code, кликабельные ссылки в комментариях. Также правится неправильное форматирование TinyMCE.
Облегченная версия не требует настроек, не сохраняет настройки в базе данных и поддерживает основной функционал, требующийся в обычном блоге. Работает с UTF-8.

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

Надеюсь, данный пост кому-нибудь да пригодится.

PS Как думаете, стоит ли мне замутить пост про самые необходимые и клевые плагины для WordPress? Таких постов, конечно, валом в интернетах, но там часто описывают ненужные и лишние плагины, а мой «джентльменский набор» особенный ;)

Статьи по теме

Кнопка "Вернуться к началу"
Закрыть

Обнаружен Adblock

Пожалуйста, подумайте о том, чтобы поддержать нас, отключив свой блокировщик рекламы!