Как вы можете отменить публикацию страниц на определенную дату в silverstripe 3? - PullRequest
1 голос
/ 08 апреля 2019

Я хочу настроить автоматическую отмену публикации страниц в установленную дату на silverstripe 3.

Я видел несколько решений для этого в Интернете, в основном с использованием определенных модулей, однако ни одно из них не совместимо с silverstripe 3и многие модули говорят, что они теперь заброшены, если нет, я получаю следующую ошибку на composer

[InvalidArgumentException]                                                                                                        
  Could not find a matching version of package xxxxxxxx. Check the package spelling, your version constr  
  aint and that the package is available in a stability which matches your minimum-stability (dev).

У кого-нибудь есть полностью работающее решение для silverstripe 3?

1 Ответ

1 голос
/ 09 апреля 2019

то, что вы ищете, скорее всего, модуль эмбарго (https://github.com/silverstripe-terraformers/silverstripe-embargo-expiry). в сочетании с модулями queuedjobs (https://github.com/symbiote/silverstripe-queuedjobs) для запланированных заданий позволяет планировать публикацию и отмену публикации объектов DataObjects (например, страниц))..

Вы можете установить модули с помощью:

composer require silverstripe-terraformers/embargo-expiry symbiote/silverstripe-queuedjobs

и добавить конфигурацию в SiteTree:

SiteTree:
  extensions:
    - SilverStripe\Versioned\Versioned
    - Terraformers\EmbargoExpiry\Extension\EmbargoExpiryExtension

После этого запустите dev / build, и вы сможетечтобы установить даты в CMS.

В вашей производственной среде вам нужно будет настроить cronjob, подобный следующему:

*/1 * * * * php /path/to/silverstripe-project/framework/cli-script.php dev/tasks/ProcessJobQueueTask

Для локального тестирования вы сможете запустить:

php ./framework/cli-script.php dev/tasks/ProcessJobQueueTask

С помощью описанных выше шагов вы сможете установить срок действия страниц, настроенных в SilverStripe 3.x.

Cheers, Peter

...