Wp-Cron Oversikt

WP-Cron utfører spesifikke oppgaver For WordPress drevet nettsteder. Navnet Cron kommer Fra Unix-systemet for planlegging av jobber, alt fra en gang i minuttet til en gang i året. Enten det er rutinemessig vedlikehold eller planlagte varsler, kan enhver kommando som kan utføres På Unix uten brukermedvirkning, planlegges Som En Cron-oppgave.

WP-Cron er lik I Naturen Til Cron, men er forskjellig på et par svært viktige måter. Denne funksjonen er laget utelukkende for Å håndtere WordPress rutineoppgaver:

  • Sjekk etter ny versjon Av WordPress kjerne, temaer og plugins
  • Rydde opp spam

Plugins og temaer kan legge til oppgaver som skal utføres med jevne mellomrom. For eksempel, hvis Du har et plugin som skanner Twitter for tweets og deretter inkorporerer dem i kommentarer, er det mest sannsynlig gjort MED EN WP-Cron jobb. WP-Cron åpner opp en helt ny verden av Ting Som Et WordPress-drevet nettsted kan gjøre.

hvordan utløses WP-Cron?

den store forskjellen Mellom Cron OG WP-Cron er HVORDAN WP-Cron utløses. Cron er en systemprosess som går hvert minutt og ser etter oppgaver å utføre. WP-Cron, FORDI DET er et nettbasert system, kan bare kjøre når noen besøker nettstedet. DERFOR, NÅR noen navigerer Til WordPress-nettstedet ditt, sjekker WP-Cron FOR å se om noe må gjøres. Takket Være WordPress – kjerneutviklerne gjør det dette på en måte som ikke påvirker ytelsen til nettstedet ditt negativt.

Problemer med Lav Trafikk Nettsteder

Lav trafikk WordPress nettsteder kan oppleve hoppet oppgaver når denne funksjonen utløses av besøkende. HVIS folk ikke besøker nettstedet ditt, KAN WP-Cron ikke utføre. Dette betyr ikke at siden din vil være treg fra tidligere jobber når noen til slutt besøker nettstedet ditt. Uansett hvor mange oppgaver WP-Cron må utføre, kjøres DE i bakgrunnen, slik at nettstedets ytelse ikke påvirkes negativt.

Problemer med Nettsteder Med Høy Trafikk

Hvis WordPress-drevet nettsted er høy trafikk, kan DU få problemer MED WP-Cron. De viktigste problemene som kommer opp er raseforhold og lange løpende prosesser.

  • Løpstilstand: Når mer enn en bruker besøker nettstedet ditt og utløser WP-Cron for å utføre den samme oppgaven. WP-Cron jobber hardt for å eliminere raseforhold, men de kan fortsatt skje, spesielt på nettsteder med høy trafikk.
  • Lang løpende prosess: enhver oppgave som tar lengre tid enn standard 60 sekunder å kjøre. Utviklere kan justere hvor lenge EN PHP oppgave er lov til å kjøre medset_time_limit() funksjon. Hvis dette er satt til å være lengre enn vinduet mellom oppgaver, kan du ende opp med mer enn en kopi av wp-cron.php utføring.

Begge disse problemene er adressert I WP-Crons interne låsing og er ikke vanlige problemer; men de kan fortsatt av og til skje.

Administrer Wp-Cron Internt

WP-Cron kommer forhåndskonfigurert og klar til å kjøre, så du trenger ikke å gjøre noe for å aktivere Det på WordPress-nettstedene dine.

under den første installasjonen Av WordPress konfigureres flere oppgaver automatisk. Du kan bruke noen enkle kommandoer fra kommandolinjen, eller en av flere plugins, for å finne de eksakte jobbene som kjøres AV WP-Cron.

WP-Cron fra CLI

hvis Du Har Terminus installert, kan du enkelt se alle detaljer om HVA som skjer MED WP-Cron. Terminus, GJENNOM WP-CLI, kan vise deg detaljer som:

  • Hva som er planlagt å kjøre
  • hva som vil kjøre neste
  • hendelses kroker som er satt opp

Du kan også planlegge dine egne jobber, utføre eksisterende jobber, og administrere omtrent ALT WP-Cron relatert-alt fra kommandolinjen.

En av de første tingene du vil gjøre er å teste WP-Cron for å sikre at alt fungerer som det skal. Når du utfører kommandoen nedenfor, må du sørge for å erstatte SITE_NAME med nettstedets navn fra Pantheon Dashboard og erstatte ENV_NAME med ønsket miljø («dev»,» test»,» live » eller multidev grennavn).

terminus wp <site>.<env> -- cron test

hvis alt fungerer riktig, ser resultatet slik ut:

Success: WP-Cron spawning is working as expected.

DETTE gjør AT DU vet AT WP-Cron fungerer riktig på nettstedet ditt. Herfra kan du kjøre en cron – relatert kommando MED WP-CLI. Når DU bruker WP-CLI til å administrere Ditt Pantheon hosted WordPress-nettsted, bør Du bruke Terminus. Kommandoformatet er som følger:

terminus wp <site>.<env> -- cron <your wp-cron command and switches here>

Alle terminus wp kommandoer krever et områdenavn og et miljø for å fungere.

Merk

Hvis du har beskyttet nettstedet ditt ved Hjelp Av Sikkerhetsinnstillingen på Dashbordet, Vil Terminus ikke kunne utføre cron, og du kan se statusrapporteringsfeil på Dashbordet.

Plugins

hvis DU vil holde øye MED WP-Cron, men ikke liker kommandolinjen, er det flere plugins du kan bruke. WP Crontrol, for eksempel, vil vise deg alle hendelsene som er planlagt for nettstedet ditt. Du kan opprette, redigere, kjøre eller slette jobber umiddelbart fra WordPress admin dashboard. Du kan også koble nye handlinger til tidsplaner eller flytte eksisterende handlinger til nye tidsplaner fra Verktøy-delen.

WPX Cron Manager Lite vil gjøre en lignende jobb med en litt annen UI. Dette pluginet krever at DU gjør en engangsinstallasjon AV WPX-rammen, som du kan gjøre rett fra plugin manager-siden.

Administrer Wp-Cron Eksternt

hvis du leter etter mer kontroll over nettstedets cron-jobber, eller du ikke vil AT WP-Cron skal håndtere oppgaver internt, kan du bruke eksterne croner i stedet. Dette vil løse problemene diskutert ovenfor for høy trafikk og lav trafikk nettsteder.

Deaktiver WP-Cron

det første du må gjøre er å deaktivere wp-Crons interne behandling. Legg til følgende linje iwp-config.php fil:

wp-config.php
define('DISABLE_WP_CRON', true);

Merk

DET er mange viktige oppgaver SOM WP-Cron tar seg AV, så vær forberedt på å fullføre alle trinnene nedenfor.

Gratis Tjenester

når DU har deaktivert WP-Cron, trenger du en tjeneste som kaller EN URL med jevne mellomrom. Den enkleste måten å gjøre dette på er å sette opp en konto med en gratis cron-tjeneste:

  • EasyCron
  • Set Cron Job
  • cron-job

noen av de ovennevnte tjenestene vil få jobben gjort. Ved å deaktivere WP-Cron har du slått av automatisk kontroll og kall av wp-cron.php skriptet. DU må nå ringe DEN NETTADRESSEN selv ved hjelp av en av tjenestene ovenfor. Med de fleste av dem er det så enkelt som dette:

  1. Sett opp en konto
  2. Sett opp en jobb som kaller https://yourdomain.tld/wp-cron.php?doing_wp_cron

Merk

Erstatt `yourdomain.tld ‘ med domenet ditt.

Avhengig av hvilken tjeneste du bruker, kan du ha muligheten til å sette opp flere jobber til forskjellige tider. Opprette en enkelt jobb som kaller nettstedetswp-cron.php script hvert 15. minutt er alt du trenger. WP-Cron vil ta seg av resten. Hvis du oppretter nye tidsplaner som må kjøres oftere enn en gang hvert 15. minutt, må du justere jobben din tilsvarende.

det er viktig at du ikke legger til en verdi idoing_wp_cron spørringsvariabelen; den må være tom for at cron skal fungere skikkelig.

Bruke Din Egen Server

hvis du administrerer din egen server, kan du bruke cron-tjenesten til å ringe tilwp-cron.php skriptet. Du må lære å sette opp En Cron-jobb riktig og bruke noe som wget eller curl for å hente en nettside. Med mindre du tar spesielle forholdsregler, er det ikke noe tryggere å bruke din egen server vs. en web-basert cron-tjeneste; men det gir deg mer kontroll.

Sikkerhet

for det meste erwp-cron.php sikker. Det er bare en parameter du kan passere inn som vil pavirke skriptet (doing_wp_cron). Denne$_GET – verdien er ikke filtrert; den brukes bare som et flagg og ikke som input for en prosess eller variabel. Utover det blir alle innspill ignorert.

selv om ingen skript på en server som er koblet Til Internett, er 100% sikker, harwp-cron.php for øyeblikket ingen kjente sårbarheter eller utnyttelser.

WordPress Cron Plugins

WordPress Har Mange plugins som styrer både interne wp-Cron oppgaver og eksterne Cron jobber. Siden Pantheon ikke tilbyr Cron-tjenester, anbefaler vi ikke eller fraråder bruk av en gitt plugin. Vi oppfordrer deg til å sjekke ut listen Over WordPress Cron Plugins og eksperimentere i Dev miljø for å finne den som best passer dine behov.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.