Как правильно задать кодировку для страницы и сайта в целом?

"Все аспекты самостоятельного создания и продвижения сайтов
от практика с многолетним опытом." — блог Рудь Сергея
info@site-on.net
Заметка: активирована адаптивная версия сайта, которая автоматически подстраивается под небольшой размер Вашего браузера и скрывает некоторые детали сайта для удобства чтения. Приятного просмотра!
01.04.2013

Доброго времени суток, уважаемые читатели блога Site on! Сегодня речь пойдёт о такой мелочи, как кодировка страниц наших с вами сайтов на Joomla, WordPress и вовсе без CMS. Несмотря на то, что в этом нет ничего сложного, множество людей до сих пор задают вопросы на форумах, связанные с этой проблемой.

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

Как изменить кодировку страницы?

Теперь, когда мы знаем, какая кодировка нам нужна, первым делом нужно сохранить все файлы, которые нужно перекодировать в UTF-8 без BOM, это можно сделать с помощью большинства текстовых редакторов для программистов (не Microsoft Office), например, PSPad или Notepad++, а также множество других.

Перекодирование в UTF-8 на примере PSPad

Если Вы используете бесплатный редактор PSPad, то всё что вам необходимо, это открыть в нём нужный файл, выбрать из верхнего меню «Формат» и выбрать из выпавшего списка UTF-8, после чего обратите внимание на смену кодировки в нижнем правом углу вашего окошка с PSPad, незабываем сохранить изменения!

указываем кодировку UTF-8

Как правильно указать нужную кодировку?

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

header("Content-Type: text/html; charset=utf-8");

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

<meta http-equiv="content-type" content="text/html; charset=utf-8" />
Просто ещё раз подчёркивает и объявляет (а не назначает!) принадлежность к той или иной кодировке, но никак не говорит серверу посылать документы именно в данной кодировке, в отличие от PHP. Именно PHP говорит серверу, на котором находится ваш сайт, в какой кодировке послать страницу клиенту. Так же это можно делать и с помощью .htaccess – файла тонкой конфигурации веб-сервера Apache, но лично мне больше импонирует вариант с PHP. Тем более я слышал, что не все хостеры предоставляют конфигурацию с помощью .htaccess, слава богу не сталкивался :)

кодировка UTF-8

Итак, после того как мы пересохранили все нужные нам файлы в UTF-8 без BOM и указали кодировку с помощью PHP, остаётся лишь «подтвердить» её мета тегом, который также обязательно нужно указывать! Это рекомендует сам W3C для того, чтобы устройства, роботы и клиентские браузеры могли безошибочно определить, в какой кодировке ваш сервер послал страницу.

Как поменять кодировку страниц в Joomla?

Давайте рассмотрим пример правильного указания кодировки на Joomla 2.5 Это вовсе не сложно и займёт менее минуты:

1) Заходим в главный файл нашего шаблона сайта под названием index.php. Он находится по адресу: /templates/ваш_шаблон/index.php

правильная кодировка для Joomla

2) Перекодируем этот файл с помощью текстового редактора для программистов, как было описано для PSPad.

3) Сразу после строки, которая предотвращает прямое обращение к файлу

 defined("_JEXEC") or die; 
пишем код, который пошлёт заголовок с нашей кодировкой:
header("Content-Type: text/html; charset=utf-8");
Если у вас возникли трудности с поиском данной строки, то можете вставить код просто в самом вверху, например, первой строкой файла, главное не забудьте, что PHP код всегда должен быть размещён внутри конструкции <?php ваш код ?> В нашем случае:

<?php
header("Content-Type: text/html; charset=utf-8");
?>

4) Не забываем проверить, что Joomla поставила правильный мета-тег:

 <meta http-equiv="content-type" content="text/html; charset=utf-8" /> 

Заметка:

В Joomla 2.5 за вывод мета-тегов и прочей информации, заключённой в «голове» нашего сайта, отвечает следующая конструкция:

<jdoc:include type="head" /> 

Как поменять кодировку страниц в WordPress и других CMS?

Для сайтов на WordPress и любых других сайтов смысл остаётся точно таким же. Вы находите основной файл, отвечающий за вывод информации на вашем сайте, перекодируете его в UTF-8 без BOM, указываете PHP заголовок и мета-тег.

Исключения составляют сайты на чистом HTML, где PHP кода не может быть в принципе. Для таких сайтов можно просто пропустить данный шаг.

Вот и всё на сегодня, спасибо за ваше внимание и до встречи в новых статьях блога о самостоятельном создании и продвижении сайтов – Site on!

С уважением, .
Пожалуйста, оцените эту статью
Средняя оценка: 4.63 из 5 (проголосовало: 30)
Статья оказалась вам полезной? Подпишитесь, чтобы не пропустить новые!

Ваш email:
Вы можете помочь развитию проекта, сделав всего 1 клик:
Спасибо!
Пожалуйста, прокомментируйте, как Вам моя статья?
Имя:
Комментарий:

Если Вы хотите вставить код, пожалуйста, заключайте его в [code][/code]

Подписаться на новые комментарии:

E-mail:


Защита от спама: у треугольника три...
Ответ:
Подписаться на новые комментарии без комментирования - Email:
Защита от спама: у треугольника три...
Ответ:

31.05.2013 13:00:07 Анна:
Спасибо! Помогло!!!

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


20.06.2014 13:10:43 Евгений:
Благодарю.

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


01.07.2014 23:34:40 Роман:
сидел пол вечера!
Спасибо большое за статью! :)

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


14.07.2014 20:01:20 Лена:
Спасибо, мне по-настоящему помог ваш скриншот с кодом как указать кодировку в файле php

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


08.08.2014 21:26:27 Марина:
Я достаточно далека от кодировок, но вынуждена поинтересоваться, а как менять кодировку страницы в блоггере? У меня именно там проблемка - нужны прямые ссылки на мой блог. Если я правильно поняла, менять надо здесь: <?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE html> ? А вот как и что прописывать? Спасибо.
08.08.2014 22:45:50 Сергей отвечает:
Менять также, как я писал выше.

<?xml version="1.0" encoding="UTF-8" ?> вот это вообще можно удалять, если у вас html странички, это лишнее.

А <!DOCTYPE html> - вообще не причём к кодировке. В статье выше всё написано же.

Советую ещё вот эту статью внимательно почитать.

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


07.05.2015 11:05:15 Артем:
Спасибо за статью, помогли =)

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


07.05.2015 23:56:53 Сергей:
Спасибо! Очень помогла статья. Кратко и понятно!

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


15.06.2015 10:28:18 Дмитрий:
спасибо за помощь, очень помогли
http://liss.esy.es

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


28.06.2016 23:59:34 Максим:
Огромнейшее спасибо вам!!! статья и советы то что нужно! убил целый день пытаясь сменить кодировку нечитаемого русскогоЮ пересмотрел много видео и статей и наконец наткнулся на эту статью и вуаля за минуту все мои старания!!!)

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


18.07.2016 10:50:45 Александр:
Умному дядьке, кто написал эту страницу, слава! .))

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

Использую для работы
Мои расширения
Свежие статьи
Рекомендую
Горячо обсуждаемые
Подписка
  • Следовать в twitter:
  • Подписаться по RSS:
  • Подписаться по E-mail:
  • Следить ВКонтакте:
  • Следить на Facebook:
Пользовательское соглашение об условиях использования сайта и Политика конфиденциальности
Перепечатывание или копирование материалов сайта (текста, изображений и другого содержимого) для их публичного или коммерческого использования в сети Интернет, либо в печатных изданиях строго запрещены. При нарушении данного правила, с нашей стороны будут предприняты соответствующие меры, вплоть до судебной жалобы.
© site-on.net
Шрифт: +стандартно-