Seo-Бизнес блог Progress-project

Все о создании, продвижении сайтов и заработке в интернете

Обновлённый дизайн блога Progress-project
logotip «Progress-project»
logotip «Progress-project»

Правильные кавычки wordpress и автоформатирование текста

Здравствуйте уважаемые веб-мастера, сегодня на «Progress-project» я решил немного затронуть тему автоформатирования текста, а точнее, как поменять кавычки в тексте wordpress на правильные и стоит ли вообще это делать.

Я думаю Вы уже заметили, что при публикации статьи wordpress заменяет все стандартные английские кавычки набранные Вами на клавиатуре: “ ” на французскую ёлочку: « ».

И поэтому многие Веб-мастера рекомендуют исправлять этот «глюк» wordpress в виде функции: wptexturize(), с помощью установки специальных фильтров в «functions.php», что меня на самом деле очень сильно удивляет, как будто бы это касается только кавычек.

Сразу хочу Вас предупредить, что никакого, простите за жаргон бага здесь вовсе нет!

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

Для вывода же символов в статье, так сказать в первоначальном виде, без какой либо замены мы можем оборачивать их в html-теги:

<pre> <code> <kbd> <style> <script> <tt>

Если же Вы уверенны, что отключение типографской правки: функцией: «wptexturize()», никакого особого вреда Вашему ресурсу не нанесёт, сделать это можно с помощью фильтра: «remove_filter()» для необходимых функций, прописав их в самый низ файла темы «functions.php», до закрывающегося значка ?>:

remove_filter('the_title', 'wptexturize');     // заголовок записи
remove_filter('the_content', 'wptexturize');   // контент текущего поста
remove_filter('the_excerpt', 'wptexturize');   // анонс(цитата) поста
remove_filter('comment_text', 'wptexturize');  // текст комментария
remove_filter('list_cats', 'wptexturize');     // список рубрик
remove_filter('single_post_title', 'wptexturize');     // заголовок поста
remove_filter('comment_author', 'wptexturize');     // имя автора комментария
remove_filter('term_name', 'wptexturize');     // элементы таксономии
remove_filter('link_name', 'wptexturize');     // имя ссылки
remove_filter('link_description', 'wptexturize');   // текст описания
remove_filter('link_notes', 'wptexturize');     // примечания ссылки
remove_filter('bloginfo', 'wptexturize');     // информацию о блоге(в основном указывается в настройках)
remove_filter('wp_title', 'wptexturize');     // заголовок страницы
remove_filter('widget_title', 'wptexturize');    // виджеты

Можно не вставлять весь список полностью а выбрать только самое необходимое.
Так же думаю многим может пригодится вариант частичного наложение запрета на автоформатирование того или иного участка статьи.

Частичное ограничение автоформатирования

Чтобы запретить wordpress автоформатирования какого либо определённого участка поста, также в «functions.php» вставляем код:

function my_formatter($content) {
$new_content = '';
$pattern_full = '{(\[raw\].*?\[/raw\])}is';
$pattern_contents = '{\[raw\](.*?)\[/raw\]}is';
$pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE);
 
foreach ($pieces as $piece) {
if (preg_match($pattern_contents, $piece, $matches)) {
$new_content .= $matches[1];
} else {
$new_content .= wptexturize(wpautop($piece));
}
}
 
return $new_content;
}
 
remove_filter('the_content', 'wpautop');
remove_filter('the_content', 'wptexturize');
 
add_filter('the_content', 'my_formatter', 99);

Теперь при написании очередного поста или редактировании уже имеющегося, необходимый участок текста оборачиваем шоркодом:

[raw]Текст запрещённый к автоформатированию.[/raw]

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

Что же касаемо правильных кавычек то, чтобы избежать автоматической замены французских кавычек в одном и том же направлении и такое часто бывает, например »так», можно сразу проставлять их руками и сразу необходимого вида, но думаю они всё же должны соответствовать языку на котором Вы публикуете статью.

Например на английских сайтах часто используются: ‘ ’ или же “ ”, немецкие кавычки: » « или “ ” , русские так называемые лапки: „ “, уже упомянутые французские ёлочки: « » так же довольно часто используются в русско язычных сайтах, в чём кстати немалая заслуга и wordpress.

Теперь давайте заодно рассмотрим ещё одну функцию авто-форматирования WP и её вариант отключения с помощью фильтров.

Функция wpautop автоформатирования текста в wordpress

Функция wpautop() отвечает за расстановку тегов параграфов, всем известных: «<p> и </p>». Каждый очередной перенос строчки расценивает, как совершенно новый параграф, применяется для любого текста, как пост, комментарии или анонс. Обращаю Ваше внимание, что для последних, как правило в теме задаются классы css стилей, поэтому их отключение может исказить внешний вид.

Чтобы отключить также в «functions.php» вставляем следующие фильтры:

//отключение расстановки тегов параграфов
remove_filter('the_content', 'wpautop');     //записи
remove_filter('the_excerpt', 'wpautop');     //анонсы
remove_filter('comment_text', 'wpautop');    //комментарии

На сегодня по поводу wordpress кавычек и автоформатирования текста у меня всё, подписывайтесь на обновления, впереди много интересного, всего доброго и до новых встреч!

С уважением, автор блога!
© progress-project
★Обновлено:2016-08-17

Введите свой e-mail:

Вы можете поделиться статьёй в социальных сетях:

Ваш комментарий

Внимание! Перед тем, как вставить в комментарий: html, php либо JavaScript, преобразуйте его в HTML сущность!

» Подписаться на комментарии по RSS
Поиск по блогу

Введите свой e-mail:

ВКонтакте Google+ Facebook RSS-лента сайта abrek-ad-abra.ru

Топ комментаторов

Виктор(6)
seoonly(4)
Николай(3)
Олег(3)
Иван(3)

© 2015-2017

SEO-Бизнес блог «Progress-project».

Все материалы, опубликованные на сайте: принадлежат автору и охраняются в соответствии с законодательством РФ.

При использовании материалов сайта гиперссылка на обязательна!



seo-блог