Tutoriale WordPress de încredere, atunci când aveți cea mai mare nevoie.
Ghidul începătorului pentru WordPress
Cupa WPB
25 de milioane+
Site-uri web care folosesc plugin-urile noastre
16+
Ani de experiență WordPress
3000+
Tutoriale WordPress de la experți

Cum să vizualizezi și să controlezi joburile cron din WordPress

Recent, unul dintre cititorii noștri a întrebat dacă este posibil să vizualizăm și să controlăm sistemul de joburi cron WordPress din tabloul de bord. Din experiența noastră, aceasta este o întrebare pe care mulți utilizatori WordPress o au, mai ales pe măsură ce devin mai familiarizați cu modul în care funcționează WordPress în culise.

Dacă nu ești familiarizat, Cron este o tehnologie pentru a rula sarcini programate pe un server web. WordPress vine cu propriul său cron încorporat, care îi permite să efectueze sarcini programate, cum ar fi verificarea actualizărilor, publicarea postărilor programate etc.

În acest articol, vă vom arăta cum să vizualizați și să controlați joburile cron WordPress.

Ce este WordPress Cron? Cum funcționează?

Cron este un termen tehnic folosit pentru comenzile care rulează la o oră programată sau la intervale regulate. Majoritatea serverelor web îl folosesc pentru a întreține serverul și a rula sarcini programate.

WordPress vine cu propriul sistem cron, care îi permite să efectueze sarcini programate. De exemplu, verificarea actualizărilor, ștergerea comentariilor vechi din coș, publicarea postărilor programate și așa mai departe.

Pluginurile WordPress pot fi, de asemenea, utilizate pentru a efectua sarcini specificate de dvs. De exemplu, pluginul dvs. de backup WordPress poate utiliza cron-ul WordPress pentru a crea automat backup-uri la un program dat.

Cu toate acestea, utilizarea iresponsabilă a cron-ului WordPress de către plugin-uri poate încetini site-ul dvs. web. Mai ales dacă sunteți pe găzduire partajată.

Dacă un plugin efectuează frecvent sarcini intensive din punct de vedere al resurselor, atunci trebuie să identificați problema și să o remediați.

Să vedem cum să vizualizați și să controlați sistemul cron WordPress fără a scrie cod.

Vizualizați și controlați sistemul WordPress Cron

Primul lucru pe care trebuie să-l faci este să instalezi și să activezi pluginul WP Crontrol. Pentru mai multe detalii, vezi ghidul nostru pas cu pas despre cum să instalezi un plugin WordPress.

La activare, trebuie să vizitați pagina Instrumente » Evenimente Cron pentru a controla setările cron.

Evenimente cron WordPress

Veți vedea o listă a tuturor evenimentelor cron programate să ruleze pe site-ul dvs. folosind sistemul cron WordPress.

În prima coloană, veți vedea numele hook-ului care rulează cron-ul.

Numele hook-urilor vă oferă de obicei o indicație despre ce face acest eveniment particular.

Majoritatea hook-urilor implicite WordPress încep cu prefixul wp_, cum ar fi wp_update_plugins, wp_update_themes etc.

Pluginurile dvs. WordPress pot folosi sau nu propriile prefixe pentru hook-urile lor. De exemplu, All in One SEO folosește prefixul aioseo_.

Vei putea vedea, de asemenea, când va rula următorul cron și intervalul de timp dintre următoarea rulare.

Ultima coloană din listă vă permite să editați, ștergeți sau să rulați un eveniment cron.

Important: Fii foarte atent la ceea ce faci cu evenimentele cron și nu șterge niciodată un eveniment cron implicit WordPress.

Acum, să presupunem că vedeți un eveniment cron creat de un plugin WordPress care consumă multe resurse.

Mai întâi, ar trebui să verifici setările pluginului pentru a vedea dacă există o opțiune de a-l controla de acolo. Dacă nu există, atunci poți face clic pe linkul „Editare” de lângă evenimentul cron pentru a-l modifica.

Editarea unui cron în WordPress

Apăsarea butonului Editare va deschide fila „Modificare eveniment Cron” mai jos.

Aici, puteți schimba cât de des doriți ca evenimentul să ruleze.

Modificarea setărilor cron

După ce ați terminat, faceți clic pe butonul „Modify Cron Event” pentru a salva setările.

Adăugarea propriilor evenimente Cron în WordPress

Pluginul WP Crontrol facilitează adăugarea propriilor joburi cron în WordPress. Pur și simplu vizitați pagina Instrumente » Evenimente Cron și derulați în jos la fila „Adăugare eveniment Cron”.

Adăugați eveniment cron personalizat în WordPress

Mai întâi, trebuie să furnizați un nume de hook pentru evenimentul cron. Numele hook-urilor nu pot conține spații sau caractere speciale.

Dacă funcția pe care doriți să o executați necesită argumente, atunci puteți furniza acele argumente.

Apoi, trebuie să spuneți WordPress-ului când să ruleze cron-ul data viitoare. Puteți introduce „acum”, care va declanșa cron-ul imediat, „mâine”, „+2 zile” sau „25-02-2020 12:34:00”.

În cele din urmă, trebuie să selectați un program. Puteți selecta orar, de două ori pe zi, zilnic sau o dată pe săptămână. Puteți, de asemenea, să îl faceți un eveniment care nu se repetă.

Odată ce ați terminat, faceți clic pe butonul „Add Cron Event” pentru a salva modificările.

Vei observa că evenimentul tău cron va apărea acum în lista de evenimente.

Cu toate acestea, în prezent nu face nimic, deoarece nu ați spus WordPress-ului ce să facă atunci când acest eveniment este declanșat.

Va trebui să adăugați hook-ul dvs. și o funcție care rulează atunci când hook-ul cron este declanșat.

add_action( 'wpb_custom_cron', 'wpb_custom_cron_func' );

function wpb_custom_cron_func() {
  wp_mail( '[email protected]', 'Automatic email', 'Automatic scheduled email from WordPress to test cron');
}

Nu uita să folosești propria ta adresă de email.

Această funcție vă trimite pur și simplu un e-mail de testare atunci când rulează cron. Acum puteți derula în sus pagina și puteți face clic pe linkul „Rulează acum” de lângă evenimentul cron pentru a-l testa.

Notă: Utilizarea cron necesită competențe intermediare de programare și dezvoltare WordPress. Dacă nu aveți aceste competențe, vă recomandăm să angajați un dezvoltator WordPress.

Acestea sunt toate, sperăm că acest articol te-a ajutat să înveți cum să vizualizezi și să controlezi joburile cron WordPress. De asemenea, ai putea dori să vezi ghidul nostru despre cum să instalezi în masă pluginurile tale preferate în WordPress sau selecțiile noastre experte de cele mai bune pluginuri de securitate WordPress.

Dacă ți-a plăcut acest articol, te rugăm să te abonezi la canalul nostru de YouTube pentru tutoriale video WordPress. Ne poți găsi, de asemenea, pe Twitter și Facebook.

Dezvăluire: Conținutul nostru este susținut de cititori. Acest lucru înseamnă că dacă faceți clic pe unele dintre linkurile noastre, este posibil să câștigăm un comision. Vedeți cum este finanțat WPBeginner, de ce contează și cum ne puteți susține. Iată procesul nostru editorial.

Cel mai bun instrumentar WordPress

Obține acces GRATUIT la instrumentarul nostru - o colecție de produse și resurse legate de WordPress pe care fiecare profesionist ar trebui să le aibă!

Interacțiuni cu cititorii

20 CommentsLeave a Reply

  1. Vă mulțumesc foarte mult pentru introducerea acestui subiect și pentru că ne-ați ajutat să înțelegem mai bine sarcinile cron WordPress. Explicația dvs. detaliată a clarificat cu adevărat cum funcționează și cum să le gestionați eficient. Apreciez perspectivele pe care le-ați împărtășit; este îmbucurător să avem aceste cunoștințe pentru a menține site-urile noastre funcționând fără probleme. Mulțumesc din nou pentru articolul dvs. valoros!

  2. Rulăm cron la nivel de server deoarece wp-cron suprasolicită serverul. Nu există nimic pe site-ul nostru atât de critic din punct de vedere al timpului încât sarcinile să fie necesare să ruleze frecvent. Dacă am seta frecvența la zilnic, ar avea WordPress o problemă?

    • Ar depinde în mare măsură de ceea ce se face pe site și când. Nu avem o recomandare specifică pentru ceea ce poate fi amânat în acest sens.

      Admin

  3. Când merg să schimb recurența la Hooks, acestea sunt pur și simplu schimbate înapoi. Ceva nu este în regulă. Trebuie să dezactivez cron-urile WP în wp-config.php mai întâi?

    • Ar depinde de job-ul cron specific, dacă contactați suportul plugin-ului, aceștia ar trebui să vă poată asista.

      Admin

  4. Pot dezactiva sau chiar șterge pluginul WP Control după ce am setat un cron job, astfel încât să nu am prea multe pluginuri care rulează și să încetinesc site-ul web?

  5. Sunt un începător cu WordPress și nu știu unde să pun (sau cum să execut) codul:
    add_action( ‘wpb_custom_cron’, ‘wpb_custom_cron_func’ );

    function wpb_custom_cron_func() { wp_mail( ‘[email protected]’, ‘Email automat’, ‘Email programat automat de la WordPress pentru testarea cron’); }

  6. Mulțumesc pentru articol. Interesant de văzut numărul de pluginuri care rulează frecvent sarcini cron. O privire excelentă în interiorul pluginului...

  7. Când verific programul cron, datele afișate în coloana „next run” sunt toate în trecut. Înseamnă că nu rulează?

    În trecut, cred că am adăugat 'true' în fișierul wp config pentru a opri actualizările automate wp să-mi strice site-ul... ar putea fi aceasta cauza?

  8. Funcționează acest lucru în Multi-site? Se pot controla cron-urile pentru toate instanțele într-un scenariu multisite?

  9. Articol grozav, dar nu este necesar pentru

    if ( ! wp_next_scheduled( ‘wpb_custom_cron’ ) ) { wp_schedule_event( time(), ‘hourly’, ‘my_task_hook’ ); }

    această parte se face în plugin,

  10. Am testat exemplul oferit. Funcționează ca un super-erou. Dar, vă rog, oferiți-ne un exemplu pentru trimiterea parametrilor. Am adăugat funcția la crearea evenimentului. Dar nu știu cum să le folosesc în funcția PHP.

    Vă rugăm să ne oferiți un exemplu

  11. Site-ul meu web afișează un șir lung de wp cron după URL-ul meu și nu pot scăpa de el. Aveți vreo idee?

    ?doing_wp_cron=1499261576.8675799369812011718750 apare după URL-ul meu și mă face să par foarte spam. Apreciez sfatul dumneavoastră.

  12. Este „my_task_hook” cron hook menționat corect acolo la linia 2 sau ar trebui schimbat în „wpb_custom_cron”?

  13. Știți dacă este posibil să vizitați un link în zona wp-admin? Am un plugin care adaugă funcționalități de administrator site-ului meu WordPress, dar vreau cu adevărat ca acest lucru să fie programat să se întâmple la fiecare 24 de ore. Am linkul, dar evident că trebuie să fiu autentificat.

  14. Aveți nevoie de acea primă instrucțiune `if` afișată în codul eșantion? Pare că ar suprascrie capacitatea de a programa și anula programarea în pluginul WP Crontrol.
    Exemplul dumneavoastră a funcționat frumos când am programat sarcina în plugin și am testat-o cu opțiunea "Run Now". Voi vedea dacă primesc un e-mail la ora programată.
    Mulțumesc pentru informațiile de fond utile.

  15. Salut

    Când reîmprospătez pagina WP-Cron Events din administratorul WordPress, atunci evenimentul rulează.

Lasă un răspuns

Vă mulțumim că ați ales să lăsați un comentariu. Vă rugăm să rețineți că toate comentariile sunt moderate conform politicii noastre de comentarii, iar adresa dvs. de e-mail NU va fi publicată. Vă rugăm să NU folosiți cuvinte cheie în câmpul nume. Să avem o conversație personală și semnificativă.