Русские кавычки в WP

По-умолчанию WordPress заменяет в тексте постов двойные кавычки (т.н. универсальные, те что вы легко можете ввести с клавиатуры) на английские двойные. Оно и понятно: WP — движок импортный, а у разработчиков занимавшихся его русификацией, руки видимо до таких мелочей не дошли. Да и редко программист вникает в тонкости типографики.

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

К счастью, глубоко копать не пришлось. Замена кавычек (как и многие другие операции связанные с форматированием текста), происходит перед выводом содержимого, в самом начале файла /wp-includes/formatting.php, функцией wptexturize(). Для желаемого результата достаточно произвести следующую замену:

35
36
37
38
39
40
		/* translators: opening curly quote */
		//$opening_quote = _x('“', 'opening curly quote');
		$opening_quote = _x('«', 'opening curly quote');
		/* translators: closing curly quote */
		//$closing_quote = _x('”', 'closing curly quote');
		$closing_quote = _x('»', 'closing curly quote');

Так как сайт и все файлы в кодировке UTF-8, я не постеснялся использовать сами кавычки в коде, вместо их кодов. Наслаждайтесь русскими кавычками в своём блоге!

Там же файле узнал, что WP меняет двойной дефис на длинное тире. Что ж, удобно.

Эта запись была опубликована в рубрике Доработка Wordpress'а надфилем и отмечена метками , , , . Добавить в закладки ссылку.

Оставить комментарий

Ваш email не будет опубликован. Обязательные поля отмечены *

Вы можете использовать это HTMLтеги и атрибуты: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>