ПредишенСледващото

Променете Беатрикс кодиране на utf8

Променете Беатрикс кодиране на UTF8

Доста често ситуацията, когато даден сайт използва за кодиране cp1251, въпреки че "1C-Битрикс" вече десет години подкрепа UTF-8. По същество това е доста стари проекти, които работят и се развиват до сега, но преминат към UTF-8 не може, защото на очевидни технически затруднения.
Днес, аз говоря за техническата част на въпроса, като се използва който можете да преобразувате в Битрикс сайта в UTF-8 кодиране.
Но първо искам да благодаря на Сергей Волков и Sharomov Денис, материали, които са помогнали в подготовката на тази статия.

Внимание! Трябва да редактирате файлове чрез FTP сайт или SSH.

И сега се процедира.

1. Направете резервно копие и не забравяйте да го включи в базата данни и всички файлове уебсайт.

2. Ако използвате vitrualny хостинг, да зададете техническа поддръжка за да зададете следните параметри:

Ако използвате виртуална машина Bitrix, можете да ги инсталирате сами.

3. Премахване на модула "Търсене", без да запазвате таблиците и "Уеб Анализ" (без запазване на масите, но със запазване на шаблони за съобщения).

4. Премахване от речника транслитерация в "Форум" модул (Услуги> Форуми> Блокиране на обидни думи> речник транслитерация) на буквата "Е", който е ID = 7.

5. Промяна на регионалните настройки за кодиране прозорци-1251 с UTF-8.

Променете Беатрикс кодиране на utf8

непременно да отговаря на регионалните настройки трябва да бъде избран в настройките на сайта.

6. Добавете /bitrix/php_interface/dbconn.php:


7. Изтегляне в главната директория на сайта на скрипт convert_utf8.php. стартирайте го и изчакайте, докато неговото изпълнение.
Първата стъпка проверява разрешения, за да променяте файла, вторият пас конвертиране на всички файлове на сайта, а последният - за да промените кодирането на базата данни.
Ако имате много голяма база данни, неговото преобразуване може да отнеме много дълго време, или не завърши успешно. В този случай, се променя характера на базата данни се задава ръчно, както следва. В администраторския панел на страницата "SQL-заявка", изпълнете следната заявка:


Къде database_name - името на вашата база данни.
Тази заявка ще покаже страницата на нова заявка, която ще трябва да се извърши на същата страница:

Променете Беатрикс кодиране на utf8

Копирайте всички линии на новата заявка (не забравяйте да изключите ограничението за изхода на броя на записите на страница) и следвайте получената нова заявка. При завършване на всички таблица на база данни ще бъде преобразувана в UTF-8 кодиране.

8. Изпишете в /bitrix/php_interface/after_connect.php:


9. Изпишете в /bitrix/php_interface/after_connect_d7.php:

Подкрепете проекта - споделете линка, благодаря!