В некоторых установках WooCommerce возникает следующая проблема: когда клиент покупает скачиваемый товар, в письме «Заказ выполнен» нет ссылки для скачивания, по которой клиент может загрузить купленный товар. Вот как выглядит такое письмо:

А должно быть так:

Отсутствует таблица SQL
Это происходит потому, что в базе данных отсутствует таблица wp_woocommerce_downloadable_product_permissions.
При активации WooCommerce в базе данных создаются дополнительные таблицы. Полный список таблиц можно посмотреть здесь. Однако иногда этот процесс может завершиться с ошибкой, если префикс таблиц WordPress слишком длинный: имя таблицы не может превышать 64 символа.
Ниже приведены максимальные длины идентификаторов в базе данных:
| Идентификатор | Максимальная длина (символов) |
|---|---|
| База данных | 64 |
| Таблица | 64 |
| Столбец | 64 |
| Индекс | 64 |
| Ограничение | 64 |
| Хранимая процедура | 64 |
| Представление (View) | 64 |
| Псевдоним | 256 |
| Метка составного выражения | 16 |
Префикс таблиц WordPress задаётся при установке и хранится в файле wp-config.php.
Как решить проблему?
Решение только одно — изменить префикс таблиц WordPress.
Сделать это можно с помощью плагина из репозитория WordPress.org.
Либо вручную. В этом случае нужно переименовать все таблицы (например, через phpMyAdmin), сократить префикс и обновить его значение в файле wp-config.php. После этого деактивируйте WooCommerce и снова активируйте его. Данные при этом не потеряются, а повторная активация создаст недостающие таблицы.
Если вы не знакомы с этим процессом, поищите инструкцию по изменению префикса базы данных WordPress.
Перед выполнением обязательно сделайте резервную копию сайта и базы данных.
Примечание: рекомендуется использовать префикс таблиц WordPress длиной менее 20 символов, чтобы избежать подобных проблем.
