Новая задача для Cron, новый плагин
Пробую делать задачу для cron, для автоматического формирования yml. Сделал /www/wa-apps/shop/lib/cli/shopYandexmarketCron.cli.php
в нем:
class shopYandexmarketCron extends waCliController
{ public function execute()
{ echo "Hello world!"; } }
и по php cli.php shop YandexmarketCron не запускается.
Так же пробовал новый пустой плагин для магазина сделать,
/wa-apps/shop/plugins/yandexmarket2/lib/shopYandexmarket2.plugin.php
в нем:
class shopYandexmarketPlugin2 extends shopPlugin
{}
/wa-apps/shop/plugins/yandexmarket2/lib/config/plugin.php
return array(
'name' => 'Yandex Market 2',
'img' => 'img/yandexmarket.png',
'vendor' => 'webasyst',
'version' => '1.0.0',
'importexport' => true,
'plugin_id' => true,
'frontend' => true,
'handlers' => array(
),
);
но его нигде не видно, что-то я упустил?
спасибо
10 ответов
Про плагин:
1) Включите его в wa-config/apps/shop/plugins.php
2) Но даже включённый плагин нигде не будет видно, если он ничего не делает. Разве что инсталлер его покажет, но и тут не уверен - он же не через магазин поставлен.
Если хотите увидеть какой-нибудь эффект, подпишитесь на хук и выведете что-нибудь в браузер.
Если echo заменить на die('...'), выведет? А если добавить такой же die() в начале shopFollowupCli и запустить shop followup? А если добавить waLog::log('Hello, World!', 'hello.log'); появится ли wa-log/hello.log? Короче, копаться надо :)
Я придумал две причины, как может быть, что класс найден, а метод не выполняется.
Первая - это если там опечатка в названии метода execute(). Совсем из разряда фантастики - русская e или с.
Вторая - если в приложении есть второй файл с таким же названием и классом, но в другом каталоге. Вполне может быть, что вместо этого подключается тот, другой.