Concrete5 - automatyczne zadania

Concrete5 posiada w sobie coś takiego jak zadania (job). Domyślne zadania w C5 to:

  • Zindeksuj stronę aby pozwolić na szybkie i dokładne szukanie.
  • Generuj plik sitemap.xml, aby wyszukiwarki mogły łatwo indeksować twoja stronę.
  • Ankiety konta email i prywatne wiadomości/posty zostały wysłane.
  • Usuwa wszystkie wersje z wyjątkiem 10 ostatnich dla każdej strony.

Każde z zadań ma przypisany do siebie link np.:

http://dszymczuk.pl/index.php/tools/required/jobs?auth=17492832dfdf18v6dc1a4...

Parametr auth jest nadawany przez system, aby nikt obcy nie mógł uruchomić zadania. Ok, możemy odpalić to z przeglądarki. Ale przecież nikt nie będzie siedział 24h/24h przed komputerem żeby uruchamiać zadanie np. co godzinę.

Najprostszą metodą, aby zautomatyzować ten proces jest użycie CRONa. Nie każdy hosting to oferuje, więc jako alternatywę można zastosować dodatek:

http://www.concrete5.org/marketplace/addons/nontab-scheduler/

Jednak nie testowałem tego i wymaga na serwerze cURLa.

Skoro mamy już link z kodem autoryzacyjnym to wystarczy dodać wpis do CRONa :)

Poniższy kod dodany do CRONa uruchamia włączenie zadania co godzinę w 27 minucie.

# Wpis do CRONa:
 
27 * * * * /usr/bin/wget -O - -q -t 1 http://www.mojastrona.pl/index.php/tools/required/jobs?auth=19eef...
 
# Jeśli dodajemy zadanie z poziomy panelu administracyjnego (np. cPanel)
 
/usr/bin/wget -O - -q -t 1 http://www.mojastrona.pl/index.php/tools/required/jobs?auth=19eef...