12.06.2025
89

Пробую

ПОЕТАПНИЙ ПЛАН: ДОДАННЯ ПІДТРИМКИ EMOJI НА ІНШИХ САЙТАХ OPENCART


🔹 КРОК 1: Резервна копія

  • Перед будь-якими діями зроби повний бекап бази даних і сайту.

  • Можна зробити через phpMyAdmin або панель хостингу.


🔹 КРОК 2: Зміна кодування бази даних

Виконай у SQL (через phpMyAdmin або консоль):

sql
ALTER DATABASE ваша_база CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

🔹 КРОК 3: Зміна кодування таблиць

Конвертуй таблиці, які містять текст (зокрема ті, що мають description, name, meta_*, title тощо):

sql
ALTER TABLE oc_article_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_article CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ALTER TABLE oc_blog_category_description CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; -- І так далі для всіх текстових таблиць

🔹 КРОК 4: Зміна кодування колонок (опційно, точково)

sql
ALTER TABLE oc_article_description MODIFY description TEXT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL; ALTER TABLE oc_article_description MODIFY name VARCHAR(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL;

🔹 КРОК 5: Додай charset у config.php і admin/config.php

php
define('DB_CHARSET', 'utf8mb4');

Додай одразу після:

php
define('DB_PREFIX', 'oc_');

🔹 КРОК 6: Переконайся, що MySQL використовує правильне кодування

У файлі system/library/db/mysqli.php:

php
$this->connection->set_charset('utf8mb4');

🔹 КРОК 7: HTML-розмітка

У шаблоні сайту (наприклад, catalog/view/theme/your-theme/template/common/header.tpl або .twig):

html
<meta charset="UTF-8">

🔹 КРОК 8: Шрифти (опціонально)

Додай підтримку emoji в CSS:

css
body { font-family: "Segoe UI Emoji", "Apple Color Emoji", "Noto Color Emoji", sans-serif; }

🔹 КРОК 9: Перевірка

  • Створи статтю або товар з emoji.

  • Перевір, чи коректно зберігається та відображається.

  • У консолі браузера не має бути помилок кодування.

Написать отзыв
Внимание: HTML не поддерживается. Используйте обычный текст.