Сегодня я бы немного хотел поговорить о файле шаблона functions.php. Те, кто многие работают с шаблонами, наверняка слышали про данный файл. Основная задача данного файла заключается в том, чтобы дать разработчикам расширить функциональные возможности WordPress.
Именно в этой статье мы поговорим о том, как сохранить файл functions.php в правильной кодировке, чтобы сайт отображался в правильной кодировке, на нужном Вам языке, а также о том, какие ошибки совершаются при редактировании файла. Обычно с проблемой кодировки я сталкиваюсь, когда перевожу шаблон на русский язык. После этого, если я просто сохраню данный файл, то текст на моем сайте будет отображаться нормально (на русском языке, это что касается записей), а то, что я перевел на русский язык, например ссылку Читать далее (Read More) – иероглифами. Затем и у Вас и у меня приходит на ум сохранить файл functions.php в UTF-8 кодировке (для этих целей, конечно, необходимо использовать специализированный текстовый редактор, например, Notepad+), но скажу сразу, это Вас это не спасет. После этих действий у Вас вообще весь сайт будет в иероглифах. Дальше мы рассмотрим основные ошибки, при редактировании файла functions.php и решениях этих ошибок.
Возможные ошибки в файле functions.php
- Вставляете какой-то уже готовый php-код или редактируется уже имеющийся код – следствие этого, сайт не отображается, либо показывает на ошибку в файле functions.php. Вы смотрите и не можете понять, в чем дело, так как данный код, что Вы вставили отдельным скриптом работает.
- Редактируете файл functions.php путем ввода русских символов – следствие этого, сайт отображается в неправильной кодировке, либо только сама эта строчка.
Теперь поговорим о том, как можно решить данные проблемы и не допустить всего этого.
- Когда вставляете готовый php-код, не должно быть никаких пробелов, переносов и лишних слов. Если хоть какой-то один лишний проблем поставите в данном файле, то получите ошибку и возможно долго будете думать, в чем проблема. Пример того, какой код, возможно, вызовет ошибку:
<?php
...... здесь код ........
?>
<?php
...... здесь добавленный код ........
?>
А данный код, не вызовет никаких ошибок и так будет правильно:
<?php
...... здесь код ........
?><?php
...... здесь добавленный код ........
?>
Также часто бывает то, что в конце файла functions.php ставиться перенос. Но сайт не запуститься и в итоге также будете думать о том, в чем может быть проблема. Приходиться откатывать файл functions.php до последней успешной версии и делать все заново.
- Что касается решений данной проблемы, то Вам необходимо скачать специализированный текстовый редактор, который может помочь Вам сохранить файл в нужной кодировке. У меня по умолчанию стоял AkelPad, но также можно скачать Notepad+. После этого, в моем случае я русифицирую шаблон, то есть меняю английский вывод записей на русский, после чего сохраняю с помощью AkelPad в кодировке UTF-8 (Кодировки-Сохранить в Unicode-UTF-8). Теперь если запустить наш сайт, то наверняка он будет весь в иероглифах. Данную проблему решаем следующим образом: открываем файл .htaccess и в его начала достаточно написать следующую строчку
AddDefaultCharset UTF-8
Все, сохраняем его и радуемся. Теперь Вы с легкостью можете редактировать свой файл functions.php и не бояться, что пойдет что-то не так.
До новых встреч!
Также советуем почитать на PressDev.RU
Короткая ссылка: http://pressdev.ru/?p=233