Εργαλεία Χρήστη

Εργαλεία ιστότοπου


wordpress-server-cron

Βλέπετε μια παλαιότερη έκδοση της σελίδας!


Αντικάσταση του wp_cron με cron job από τον server


Εισαγωγή

Το WordPress παρέχει μια λειτουργία για αυτοματισμούς που λέγεται wp_cron. Χρησιμοποιείται για να κάνει συντήρηση, για αυτόματους ελέγχους για αναβαθμίσεις, για να δημοσιεύει προγραμματισμένα άρθρα καθώς και από διάφορα plugins για να εκτελεί αυτόματα κάποιες λειτουργίες τους.

Το wp_cron δεν είναι στην ουσία ένα πραγματικό cron job που εκτελείται συγκεκριμένες στιγμές (για παράδειγμα κάθε 5 λεπτά) αλλά εκτελείτε κάθε φορά που κάποιος επισκέπτεται μια σελίδα του Wordpress, ελέγχει στη βάση εάν υπάρχουν εκκρεμείς εργασίες, και στη συνέχεια τις εκτελεί.

Αυτό έχει δύο σημαντικά προβλήματα:

1. Εάν η ιστοσελίδα σας δεν έχει επισκέπτες μια συγκεκριμένη χρονική περίοδο, τότε οι εκκρεμείς λειτουργίες δεν θα εκτελεστούν.

2. Το να εκτελείται το wp_cron σε κάθε φόρτωμα σελίδας επηρρεάζει την ταχύτητα φόρτωσης της αλλά και σε περίπτωση που κάποιος επισκέπτης μπει στη σελίδα και υπάρχουν εκκρεμείς λειτουργίες τότε για να του εμφανιστεί η σελίδα θα πρέπει να περιμένει μέχρι να εκτελεστούν αυτές οι λειτουργίες.

Για αυτούς τους λόγους προτείνουμε να γίνει αντικατάσταση του wp_cron με ένα πραγματικό cron job από τον server.

Απενεργοποίηση wp_cron

Συνδέεστε με FTP στο πακέτο hosting σας και κατεβάζετε στον υπολογιστή σας το αρχείο wp-config.php που βρίσκεται στον αρχικό φάκελο της εγκατάστασης του Wordpress. Το ανοίγετε με έναν κειμενογράφο και προσθέτετε την παρακάτω γραμμή σε οποιοδήποτε σημείο του:

define('DISABLE_WP_CRON', true);

Αποθηκεύετε το αρχείο και το ανεβάζετε ξανά στο hosting σας, αντικαθιστώντας το παλιό αρχείο.

Eνεργοποίηση πραγματικού cron job

Συνδέεστε με SSH στο πακέτο hosting σας και δίνεται τις εντολές:

setenv EDITOR nano
crontab -e

Στη συνέχεια πληκτρολογήστε την παρακάτω γραμμή αντικαθιστώντας το domain.gr με το δικό σας domain. Σε περίπτωση που υπάρχει και ενεργό SSL θα αντικαταστήσετε και το http με https:

*/5 * * * * /usr/local/bin/curl http://www.domain.gr/wp-cron.php

Τέλος για να σώσετε το cron job και να βγείτε από τον κειμενογράφο πατήστε τα πλήκτρα Ctrl+X και μετά Y.


CRETAFORCE E.E. - Αρ. Γ.Ε.ΜΗ: 159980803000 - Τηλ: (+30) 211 800 2580