После установки seoppro на opencart внезапно получил ошибку «Call to undefined method ControllerCatalogProduct::getAllCategories()» при переходе в админке в карточку товара.
Это может быть следствием некоторых ошибок при установке модуля. Чтобы решить проблему стоит попробовать следующие шаги в файле admin/controller/extension/modification.php.
Находим следующие строки:
} else {
$search = $operation->getElementsByTagName('search')->item(0)->textContent;
$limit = $operation->getElementsByTagName('search')->item(0)->getAttribute('limit');
$replace = $operation->getElementsByTagName('add')->item(0)->textContent;
После строки с $limit добавляем еще одну строку — в итоге должно получиться вот так:
} else {
$search = $operation->getElementsByTagName('search')->item(0)->textContent;
$limit = $operation->getElementsByTagName('search')->item(0)->getAttribute('limit');
$quote = $operation->getElementsByTagName('search')->item(0)->getAttribute('quote'); // <--
$replace = $operation->getElementsByTagName('add')->item(0)->textContent;
Также, ниже следует добавить еще один блок. После строк
// Limit
if (!$limit) {
$limit = -1;
}
.. нужно добавить следующее:
// Quote
if ($quote == 'true') {
$search = preg_quote($search);
}
Кроме этого в Базе Данных нужно выполнить следующую комманду:
ALTER TABLE `oc_modification` CHANGE COLUMN `xml` `xml` MEDIUMTEXT NOT NULL;