Не удается добавить переменную в класс Combination с переопределениями Prestashop (работает с классом Product) - PullRequest
0 голосов
/ 30 октября 2019

Следующая override/classes/Product.php создает новую переменную $foobar для класса Product:

<?php
if (!defined('_PS_VERSION_')) {
    exit;
}
class Product extends ProductCore
{
    public $foobar;
}

Когда я создаю new Product(), я вижу эту новую переменную.

Теперь я хочу сделать то же самое с классом Combination, поэтому я создаю аналогичный override/classes/Combination.php:

<?php
if (!defined('_PS_VERSION_')) {
    exit;
}
class Combination extends CombinationCore
{
    public $foobar;
}

Однако, когда я создаю new Combination(), это новое поле не существует.

Чего мне не хватает?

FWIW, я использую PS 1.7.6.1.

Обновление

На самом деле кажется, что override/classes/Combination.php никогда не вызывается: я добавилнеисправная строка, которая должна вызвать исключение (и это происходит в override/classes/Product.php), но ничего не происходит.

1 Ответ

0 голосов
/ 30 октября 2019

Я думал, что удалил /cache/class_index.php, как рекомендовано в документации , но все еще был /var/cache/dev/class_index.php, который мешал моим изменениям вступить в силу.

Удаление проблемы решило проблему.

Обратите внимание, что в разделе /var/cache/prod/ есть аналогичный файл, который может потребоваться удалить в случае возникновения аналогичной ситуации в производственной среде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...