Вы здесь

Как регулярно выполнять свою php функцию?

0

Имеется таблица "артефактов", ссылающихся на страны, города, архитекторов (это всё разные типы материалов). Хотелось бы рядом с каждой страной/городом/архитектором видеть счетчик привязанных к ним артефактов. Заново пересчитывать ВСЕ артефакты при каждом просмотре каждым посетителем списка стран не хочется, поэтому счетчики придется хранить в полях соответствующих справочников и как-то обновлять. Особенности паблишинг воркфлоу в принципе позволяют не обновлять эти счетчики при каждом добавлении/удалении артефакта - достаточно прогнать один пакетный запрос update-select-count раз в сутки.
И вот собственно вопрос: а как правильнее всего реализовывать подобные вещи в D8? Долго и с недоумением пялился в Rules, на который все ссылаются, пока не пришло осознание, что Rules Scheduler никто еще даже не начинал портировать на восьмерку ;) В принципе все, что мне нужно - это три простейших SQL-запроса, я их могу прогнать и вообще мимо Друпала из cron'а, но как-то мне это не представляется правильным. Как бы вы это делали?

Версия Drupal: 
8.x
Вопрос задан 12.02.2017 - 13:43

Ответы

0

Если мимо Cron друпала - может просто создать php скрипт и запускать его через Cron на хостинге?

Ответ дан 16.02.2017 - 11:46

Спасибо, я уже ковыряюсь с Queue API и hook_cron, потихонечку что-то начинает получаться.

Комментарий оставлен 16.02.2017 - 15:22
-2
Ответ дан 14.02.2017 - 08:05

Голый API без UI и документации в версии dev образца 2013 года, когда самой восьмерке еще оставалось больше года до беты? Ну что ж, если больше ничего нет...

Комментарий оставлен 14.02.2017 - 08:30

PS Только поставил, пальцем пока не тронул, и уже:

The website encountered an unexpected error. Please try again later.
Error: Call to undefined function variable_get() in job_scheduler_cron() (line 42 of modules/job_scheduler/job_scheduler.module).

Нет уж, в печку...

Комментарий оставлен 14.02.2017 - 10:04