В файле admin/model/catalog/product.php ищем строку
$tags = explode(',', $value);эта строка встречается 2 раза и после каждой найденной строки добавляем строку
$tags = array_filter(array_map('trim', $tags), 'strlen');
В файле catalog/model/catalog/product.php ищем строку
$keywords = explode(" ", $tag);эта строка встречается 2 раза и после каждой найденной строки добавляем строку
$keywords = array_filter(array_map('trim', $keywords), 'strlen');
Теперь надо вычистить из таблицы oc_product_tags записи с пустыми тегами.
Сделать это можно разными способами, например вот таким SQL-запросом:
DELETE FROM oc_product_tags WHERE tag = '';Только не забудь исправить префикс таблицы oc_ на свой.После этого строка
$number = preg_replace('/\D+/', '', $keyword);или
$number = preg_replace('/[^0-9]+/', '', $keyword);будет нормально отрабатывать и trim() не понадобится.В OpenCart 1.5.х ситуация частично лучше, но всё равно полностью не исключена возможность записи пустых тегов и требует аналогичной обработки для исключения проблем.