Установка Botoscope на ваш магазин WooCommerce

После того как вы создали своего бота, выполните следующие шаги, чтобы подключить ваш сайт WooCommerce к Botoscope:

🛠 Шаг 1: Измените ваш файл wp-config.php

На вашем сервере откройте файл wp-config.php вашей установки WordPress и добавьте следующие строки перед строкой:

/* Это все, прекратите редактирование! Счастливой публикации. */

Используйте следующий код (показаны примерные значения):

define('BOTOSCOPE_BOT_TOKEN', '123456:ABC-DEF1234ghIkl-zyx57W2v1u123ew11');
define('BOTOSCOPE_BOT_NAME', 'myshop_bot');
define('BOTOSCOPE_PROXY_SERVER', 'https://c12-t2hx7w.s2.botoscope.com');
define('BOTOSCOPE_CLIENT_API_KEY', 'bs-4a83c23c-7410ebfa-ac4z2ba3-b42c4a3f');
define('BOTOSCOPE_CLIENT_PASS', '6Jw6rzVxfdjwBEMtxtl');
define('BOTOSCOPE_ADMIN_CHAT_ID', 1234567890);
Где найти эти данные?
После активации вашего бота в системе Botoscope вы увидите все необходимые учетные данные (токен, имя пользователя, прокси-сервер, API-ключ и клиентский пароль) прямо в вашей панели управления.
Просто скопируйте их и вставьте в ваш файл wp-config.php.

🔤 Конфигурация кодировки базы данных (Критично для поддержки эмодзи)

🚨 КРИТИЧНО: Чтобы обеспечить правильную поддержку эмодзи в вашем магазине WooCommerce (необходимо для связи с Telegram), вы ДОЛЖНЫ проверить конфигурацию кодировки вашей базы данных в wp-config.php

⚠️ Проблема

Многие установки WordPress все еще используют старую кодировку utf8, которая НЕ поддерживает эмодзи. Это приведет к:

  • ❌ Удалению эмодзи из названий/описаний продуктов
  • ❌ Ошибкам базы данных при сохранении контента с эмодзи
  • ❌ Ошибкам создания заказов в Telegram
  • ❌ Ошибкам синхронизации продуктов между WooCommerce и Telegram

✅ Решение

Откройте ваш файл wp-config.php и найдите эти строки (обычно рядом с настройками базы данных):

❌ НЕПРАВИЛЬНО (старый формат - НЕ поддерживает эмодзи):
define('DB_CHARSET', 'utf8');
define('DB_COLLATE', '');

Измените их на:

✅ ПРАВИЛЬНО (поддерживает эмодзи):
define('DB_CHARSET', 'utf8mb4');
define('DB_COLLATE', 'utf8mb4_unicode_ci');
⚠️ Уже определены эти строки?
Если вы видите предупреждение типа Константа DB_CHARSET уже определена, эти константы уже установлены в вашем wp-config.php. Просто найдите и обновите существующие значения – не добавляйте дублирующие строки.

Важные заметки:

  • Сделайте это изменение ПЕРЕД установкой Botoscope для достижения наилучших результатов
  • Не пропускайте настройку DB_COLLATE – обе строки необходимы
  • После изменения перейдите в Botoscope → Системные настройки и нажмите “Сбросить полный кэш данных бота”
💡 Уже установили Botoscope с неправильной кодировкой?
Если вы уже используете Botoscope с кодировкой utf8, вам нужно будет преобразовать существующие таблицы базы данных. См. раздел “Конфигурация кодировки базы данных” ниже для методов преобразования.

📦 Шаг 2: Установите плагин Botoscope

  1. Войдите в панель администратора WordPress.
  2. Перейдите в Плагины → Добавить новый.
  3. Загрузите ZIP-файл плагина Botoscope.
  4. Нажмите Установить сейчас, затем Активировать.

⚙️ Шаг 3: Выполните начальную настройку

  1. В панели администратора WordPress перейдите в Botoscope → Системные настройки.
  2. Нажмите кнопку “Сбросить полный кэш данных бота”.
  3. Подождите около минуты — сайт будет синхронизирован с вашим магазином в Telegram

✅ Готово!

Ваш магазин теперь подключен к Telegram

Теперь вы можете:

  • Управлять вашими продуктами
  • Настраивать платежные системы
  • Контролировать категории и цены
  • И многое другое — в зависимости от потребностей вашего бизнеса

🔧 Дополнительные функции и рекомендации

🧩 Фильтрация продуктов

Если вы хотите добавить расширенную фильтрацию продуктов, установите плагин
HUSKY – WooCommerce Products Filter Professional:
🔗 https://products-filter.com/downloads

💱 Переключение валют

Если вы хотите, чтобы ваши клиенты могли переключаться между валютами, установите плагин
FOX – WooCommerce Currency Switcher Professional:
🔗 https://currency-switcher.com/downloads

📄 Загрузка PDF-счетов для клиентов

Если вы хотите, чтобы клиенты могли загружать PDF-счета со страницы заказа или из электронной почты, установите плагин:
🔗 WooCommerce PDF Invoices & Packing Slips

После установки перейдите в wp-admin/admin.php?page=wpo_wcpdf_options_page → Вкладка “Дополнительно” и примените следующие настройки:

  1. Тип доступа к ссылке на документПолный
  2. Красивые ссылки на документыДа
  3. Во вкладке “Инструменты”Создать случайную временную директорию

После установки одного или всех рекомендованных плагинов перейдите в настройки Botoscope, откройте вкладку Системные настройки и нажмите кнопку “Сбросить полный кэш данных бота”.


🔤 Конфигурация кодировки базы данных (Для поддержки эмодзи)

⚠️ Важно: Если вы заметили, что названия продуктов с эмодзи (например, 💅, 🎨, ✨) не сохраняются правильно или заказы не создаются, вам нужно преобразовать таблицы вашей базы данных в кодировку UTF-8mb4.

🎯 Выберите ваш метод:

Мы предлагаем три простых способа исправить кодировку. Выберите тот, который лучше всего подходит вам:

  • Метод 1: Плагин в один клик (Самый простой!) 🎉
  • Метод 2: PHP-код (Для разработчиков) 💻
  • Метод 3: Прямой SQL (Наибольший контроль) 🔧

✨ Метод 1: Плагин в один клик (Рекомендуется для начинающих)

Это самый простой метод – просто установите плагин и нажмите одну кнопку!

  1. В админке WordPress перейдите в Плагины → Добавить новый
  2. Найдите “WP phpMyAdmin Extension”
  3. Установите и активируйте плагин: WP phpMyAdmin Extension
  4. Перейдите в Инструменты → phpMyAdmin в админке WordPress
  5. Нажмите на вкладку SQL
  6. Скопируйте и вставьте SQL-команды из Метода 3 ниже
  7. Нажмите Выполнить
Преимущество: Нет необходимости покидать панель администратора WordPress – все делается внутри вашего знакомого интерфейса!

💻 Метод 2: Одноразовый PHP-код

Если вы уверенно редактируете PHP-файлы, этот метод автоматически выполнит преобразование при загрузке страницы.

🚨 Важно: Убедитесь, что вы сделали резервную копию вашей базы данных перед запуском этого кода!

Вариант A: Через functions.php WordPress (Временный)

  1. Перейдите в Внешний вид → Редактор тем
  2. Откройте functions.php (правая боковая панель)
  3. Добавьте этот код в самый конец файла:
// ВРЕМЕННО: Преобразование базы данных в UTF8MB4
// УДАЛИТЕ ЭТОТ КОД ПОСЛЕ ОДНОКРАТНОГО ЗАПУСКА!
add_action('admin_init', function() {
    if (!get_option('botoscope_db_converted_utf8mb4')) {
        global $wpdb;
        
        $prefix = $wpdb->prefix;
        
        // Таблицы WooCommerce
        $tables = [
            'woocommerce_order_items',
            'woocommerce_order_itemmeta',
            'woocommerce_payment_tokens',
            'woocommerce_payment_tokenmeta',
            'woocommerce_sessions',
            'woocommerce_shipping_zones',
            'woocommerce_shipping_zone_locations',
            'woocommerce_shipping_zone_methods',
            'woocommerce_tax_rates',
            'woocommerce_tax_rate_locations',
        ];
        
        // Таблицы Botoscope
        $botoscope_tables = [
            'botoscope_advertising',
            'botoscope_booking_reservations',
            'botoscope_booking_slots',
            'botoscope_booking_slots_targeted',
            'botoscope_broadcast',
            'botoscope_controls',
            'botoscope_elogios',
            'botoscope_extensions',
            'botoscope_interface_translations',
            'botoscope_marketing_campaigns',
            'botoscope_marketing_campaigns_products',
            'botoscope_marketing_campaigns_products_excluded',
            'botoscope_marketing_campaigns_terms',
            'botoscope_marketing_strategies',
            'botoscope_marketing_strategies_formulas',
        ];
        
        $all_tables = array_merge($tables, $botoscope_tables);
        
        foreach ($all_tables as $table) {
            $full_table = $prefix . $table;
            $wpdb->query("ALTER TABLE {$full_table} CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci");
        }
        
        update_option('botoscope_db_converted_utf8mb4', time());
        
        echo ''; } });

✅ База данных успешно преобразована в UTF8MB4! Теперь вы можете удалить код из functions.php

  1. Нажмите Обновить файл
  2. Перейдите на любую страницу в админке WordPress (например, на Панель управления)
  3. Вы увидите сообщение об успешном завершении преобразования
  4. ВАЖНО: Вернитесь в functions.php и УДАЛИТЕ код, который вы только что добавили

Вариант B: Через отдельный PHP-файл

  1. Создайте новый файл с именем convert-db.php в корневом каталоге вашего WordPress
  2. Вставьте этот код в файл:
<?php
// Загрузить WordPress
require_once('wp-load.php');

if (!current_user_can('manage_options')) {
    die('Доступ запрещен');
}

global $wpdb;
$prefix = $wpdb->prefix;

echo '<h1>Преобразование базы данных в UTF8MB4...</h1>';

// Таблицы WooCommerce
$tables = [
    'woocommerce_order_items',
    'woocommerce_order_itemmeta',
    'woocommerce_payment_tokens',
    'woocommerce_payment_tokenmeta',
    'woocommerce_sessions',
    'woocommerce_shipping_zones',
    'woocommerce_shipping_zone_locations',
    'woocommerce_shipping_zone_methods',
    'woocommerce_tax_rates',
    'woocommerce_tax_rate_locations',
];

// Таблицы Botoscope
$botoscope_tables = [
    'botoscope_advertising',
    'botoscope_booking_reservations',
    'botoscope_booking_slots',
    'botoscope_booking_slots_targeted',
    'botoscope_broadcast',
    'botoscope_controls',
    'botoscope_elogios',
    'botoscope_extensions',
    'botoscope_interface_translations',
    'botoscope_marketing_campaigns',
    'botoscope_marketing_campaigns_products',
    'botoscope_marketing_campaigns_products_excluded',
    'botoscope_marketing_campaigns_terms',
    'botoscope_marketing_strategies',
    'botoscope_marketing_strategies_formulas',
];

$all_tables = array_merge($tables, $botoscope_tables);

foreach ($all_tables as $table) {
    $full_table = $prefix . $table;
    
    echo "Преобразование {$full_table}... ";
    
    $result = $wpdb->query("ALTER TABLE {$full_table} CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci");
    
    if ($result !== false) {
        echo '<span style="color: green;">✅ Успех</span><br>';
    } else {
        echo '<span style="color: red;">❌ Ошибка: ' . $wpdb->last_error . '</span><br>';
    }
}

echo '<h2 style="color: green;">✅ Преобразование завершено!</h2>';
echo '<p><strong>ВАЖНО:</strong> Удалите этот файл (convert-db.php) с вашего сервера сейчас!</p>';
?>
  1. Загрузите файл в корневой каталог вашего WordPress (где находится wp-config.php)
  2. Откройте ваш браузер и перейдите по адресу: https://yoursite.com/convert-db.php
  3. Дождитесь завершения преобразования
  4. ВАЖНО: Удалите файл convert-db.php с вашего сервера!
Преимущество: Вы можете видеть процесс преобразования в реальном времени и сразу обнаружить любые ошибки.

🔧 Метод 3: Прямой SQL в phpMyAdmin

Это самый прямой метод, если вы уверенно используете phpMyAdmin.

📋 Пошаговые инструкции:

  1. Войдите в панель управления хостингом (cPanel, Plesk и т.д.)
  2. Откройте phpMyAdmin
  3. Выберите вашу базу данных WordPress в левой боковой панели
  4. Нажмите на вкладку SQL вверху
  5. Скопируйте и вставьте SQL-команды ниже
  6. Нажмите Выполнить для выполнения

💡 Примечание о префиксе таблицы: Команды ниже используют wp_ в качестве префикса таблицы. Если ваша установка WordPress использует другой префикс (например, wpdb_ или wp123_), вам нужно заменить wp_ на ваш фактический префикс во всех командах ниже.

Чтобы найти ваш префикс, посмотрите на имена таблиц в phpMyAdmin – все они начинаются с одного и того же префикса.

-- Преобразование таблиц WooCommerce
ALTER TABLE wp_woocommerce_order_items CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_order_itemmeta CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_payment_tokens CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_payment_tokenmeta CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_sessions CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_shipping_zones CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_shipping_zone_locations CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_shipping_zone_methods CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_tax_rates CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_woocommerce_tax_rate_locations CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Преобразование таблиц Botoscope
ALTER TABLE wp_botoscope_advertising CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_booking_reservations CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_booking_slots CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_booking_slots_targeted CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_broadcast CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_controls CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_elogios CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_extensions CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_interface_translations CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_marketing_campaigns CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_marketing_campaigns_products CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_marketing_campaigns_products_excluded CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_marketing_campaigns_terms CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_marketing_strategies CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_botoscope_marketing_strategies_formulas CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- Преобразование основных таблиц WordPress (необязательно, но рекомендуется)
ALTER TABLE wp_posts CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_postmeta CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_comments CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_commentmeta CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_terms CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_term_taxonomy CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_term_relationships CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_termmeta CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_users CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_usermeta CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_options CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
ALTER TABLE wp_links CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Преимущество: Самый прямой и надежный метод. Работает на любом хостинг-провайдере, предоставляющем доступ к phpMyAdmin.

✅ После преобразования (Все методы):

  1. Перейдите в Botoscope → Системные настройки в админке WordPress
  2. Нажмите “Сбросить полный кэш данных бота”
  3. Проверьте создание заказа с эмодзи в названии продукта – теперь это должно работать! ✨
Полезно знать: Это преобразование безопасно и не повлияет на ваши существующие данные. Оно только изменяет способ хранения текстовых символов в базе данных, позволяя поддерживать эмодзи и специальные символы всех языков.
🚨 Если вы получили ошибку: Некоторые очень старые хостинг-провайдеры могут не поддерживать кодировку UTF-8mb4. В этом случае Botoscope автоматически будет работать в режиме совместимости – эмодзи будут удалены из названий продуктов, но все остальное будет функционировать нормально.
⚠️ Примечание: Если вы получили ошибку “Таблица не существует”, просто пропустите эту команду и продолжайте с следующей. Это происходит, когда определенные модули Botoscope не установлены на вашем сайте.
0
Благодарим! 
Ошибка!