По умолчанию WordPress заменяет простые кавычки » » фигурными « ». К сожалению, делает он это неадекватно, если в тексте есть несколько кавычек. В добавок, если в статье есть примеры из программирования, то замена крайне нежелательна. Как же отключить автоматическую замену?
Функция remove_filter
Для отключения автоматической замены кавычек в WordPress необходимо перейти в меню «Внешний вид» — «Редактор» — «Функции темы». И после первой строки «<?php», в начале файла, добавить следующие строки:
remove_filter(‘the_content’, ‘wptexturize’);
remove_filter(‘the_excerpt’, ‘wptexturize’);
Сохраните файл после изменения. И проверьте результат на сайте — исчезнет автоматическая замена кавычек на фигурные скобки в статьях и анонсах.
Подробнее о wptexturize
Разберём подробнее, что содержат две строчки кода:
remove_filter — это функция для удаления «фильтров» в WordPress.
the_content — функция, которая выводит содержание статьи.
the_excerpt — функция для вывода анонса статьи.
wptexturize — функция форматирования текста
Функции the_content и the_excerpt взаимосвязаны с wptexturize. Как только вызывается the_content(), то выполняется и wptexturize(). Чтобы разорвать эту связь используется remove_filter().
К сожалению, при удалении wptexturize исчезнут не только фигурные кавычки, но и другие украшения текста. Потому что эта функция преобразует ещё несколько комбинаций значков в более привлекательные (по её мнению). Пример работы функции wptexturize:
| до | после |
|---|---|
| — | — |
| » — « | — |
| — | – |
| — | – |
| … | … |
| « | “ |
| «hello | “hello |
| ‘hello | ‘hello |
| » | ” |
| world.» | world.” |
| world.’ | world.’ |
| (c) | © |
| (r) | ® |
| (tm) | ™ |
| 1234″ | 1234″ |
| 1234′ | 1234′ |
| ’99 | ’99 |
| Webster’s | Webster’s |
| 1234×1234 | 1234×1234 |