Kako izbrisati stare revizije objave v WordPressu. Izdaje WordPressa, revizije in samodejno shranjevanje. Kako izbrisati vse revizije in izdaje

Dober dan vsem. Danes sem za vas napisal povsem tehničen članek, ki vam omogoča optimizacijo baze podatkov blogov WordPress s čiščenjem revizij (samodejno shranjenih kopij člankov). Podrobno si bomo ogledali in analizirali namen revizij, njihovo bistvo, pokazal pa vam bom tudi, kako izbrisati in onemogočiti ali omejiti pojav revizij v WordPressu. Spodaj objavljeno gradivo bo spremljalo podrobne slike s komentarji.

Kot lahko vidite, je kar nekaj vprašanj za preučevanje. Res je, da za mnoge lastnike internetnih virov to ne bo novo, vendar "najpametnejši" ne berejo mojega bloga, berejo ga tisti, ki se želijo naučiti. Za ustvarjanje priljubljenega, zanesljivega in stabilnega spletnega mesta morajo začetniki razumeti vse tehnične podrobnosti in praktično razumeti revizije in še veliko več. Se bo naučil.

Kaj so revizije v WordPressu

Morda ste opazili, da med pisanjem ali urejanjem objave sistem samodejno naredi njeno kopijo – varnostno kopijo. V tem času postaneta gumba »Objavi« in »Shrani« v oknu na desni strani neaktivna. To dejanje se imenuje revizija.

Revizije v WordPressu so samodejno varnostno kopiranje vsebine objave ali strani, da se prepreči izguba podatkov. Iz njih lahko obnovite prejšnje kopije dokumentov.

Mnogi ljudje so verjetno uganili, da se revizije WordPressa uporabljajo za preprečevanje izgube podatkov. Konfigurirajo se samodejno in po določenem času (vsakih 60 sekund) naredijo varnostno kopijo. Dodani so v podatkovno bazo (MySql - phpMyAdmin). Seznam revizij v WordPressu si lahko ogledate tik pod oknom za urejanje objave (v načinu urejanja). Če se pomaknete po strani, jih lahko vidite tik spodaj v oknu »Urejevalniki«. Izgledajo takole:

Verjetno se že sprašujete "Zakaj brisati ali onemogočati revizije?", če imajo tako koristno vlogo. Celotna težava je v tem, da kopije zapisov, člankov ali objav zelo obremenjujejo bazo podatkov, v katero so vnesene. To vodi ne samo do prihodnjih težav pri urejanju in spreminjanju, ampak tudi do počasnega nalaganja strani spletnega mesta. Svetujem vam, da preberete objavo "". Iskalniki so temu parametru začeli posvečati posebno pozornost. Mimogrede, od tega je neposredno odvisen tudi vedenjski dejavnik, katerega kazalnik se oblikuje iz ocene vedenja uporabnikov.

Seveda se moramo znebiti revizij, ne glede na to, kako koristne so. To ne bo samo zmanjšalo velikosti in obsega baze podatkov, ampak tudi veliko hitreje naložilo spletno mesto.

Kako izbrisati revizije v WordPressu

Obstajajo različni načini za brisanje revizij, pokazal bom dva. Ena je namenjena telebanom, kakršen sem bil pred kratkim jaz, druga pa bolj pripravljenim (ki se ne bojijo strežnikov in baz podatkov).

Metoda št. 1. Boljši vtičnik Delete Revision

Za brisanje revizij bomo uporabili posebej ustvarjen vtičnik - Better Delete Revision. Prenesite ga preko Admike in namestite. Po aktivaciji se v razdelku z nastavitvami pojavi element z imenom, podobnim imenu vtičnika - to so nastavitve.

Bazo podatkov lahko takoj optimizirate ali pa pojdite na zavihek »Preveri zapise revizij« in od tam očistite svoj blog pred nepotrebnimi kopijami dokumentov.

Metoda številka 2. Brisanje neposredno iz baze podatkov

Ta je nekoliko težje izvedljiv. Nočem vas strašiti, a če se bojite narediti kaj narobe, je bolje, da to preskočite. Pri tej metodi bomo izbrisali kopije člankov neposredno prek same baze podatkov. Preden greste tja, vam svetujem, da ga kopirate. Če ne veste, kako to storiti, potem preberite objavo.

Ko izberete želeno bazo podatkov, poiščite zavihek "SQL", ga odprite tako, da se pred vami prikaže prazno polje.

Vanj morate kopirati spodnjo kodo in klikniti gumb »V redu«. S tem dejanjem boste naredili zahtevo SQL za brisanje revizij iz baze podatkov.

DELETE FROM wp_posts WHERE post_type = "revision";

Moralo bi izgledati kot na sliki:

Če so vaša dejanja uspešna, boste kot odgovor videli naslednje sporočilo. Če predhodno niste izbrisali ali onemogočili revizij, bo število vrstic drugačno od nič.

Kako onemogočiti revizije WordPressa

Da ne bi izgubljali časa za vsakokratno čiščenje, je mogoče onemogočiti ustvarjanje varnostnih kopij člankov. Potem bo vaše okno »Urejevalniki« preprosto izginilo in trajno shranjevanje se ne bo več dogajalo. Preden to storite, dobro premislite, saj ne boste več mogli odpreti ali se vrniti na prejšnjo različico vnosa.

Če želite onemogočiti revizije, morate iti na svoje gostovanje in urediti datoteko wp-config.php, ki se nahaja v korenski mapi. Vanj prilepite kodo s parametrom:

Define("WP_POST_REVISIONS", 3);

Številka določa število različic dokumentov, ki bodo shranjene v bazi podatkov. Omejite ga na število, ki ga potrebujete, na primer ena bi pomenila, da imate enega objavljenega in enega varnostno kopiranega (nazadnje urejenega).

Po končanem spreminjanju kliknite na gumb "Shrani". Zdaj vaša zbirka podatkov ne bo nabreknila kot kvašeno testo vsakič, ko boste urejali članke.

Tukaj zaključujem to objavo. Upam, da so vam bile te informacije koristne. Če imate kakršna koli vprašanja, jih pustite v komentarjih.

Se želite znebiti nepotrebne navlake v vaši zbirki podatkov WordPress? Onemogoči revizije objav! Če vas zanima, berite dalje.

Kaj so revizije?

Ko ustvarite novo objavo ali stran na spletnem mestu, jo nato shranite in nato večkrat uredite, "motor" samodejno shrani vse njene različice v svojo bazo podatkov. Imenujejo se revizije.

Zakaj onemogočiti revizije v WordPressu?

Če vaše spletno mesto nima več kot ducat vnosov, potem ni razloga za skrb. Če pa jih je več kot sto, je vredno razmisliti. Navsezadnje se lahko en članek večkrat popravi, dokler ni objavljen. To pomeni, da bo v podatkovni bazi shranjenih več deset njegovih kopij. Načeloma je po eni strani to priročno, saj vam omogoča ogled vseh sprememb, vrnitev nekaterih od njih itd. Ko pa je publikacija objavljena na spletnem mestu, nihče ne potrebuje njenih dvojnikov.

Kako onemogočiti revizije v WordPressu?

Če ste srečni lastnik večnamenskega premium vtičnika, vam ne bo treba iskati drugih rešitev. Ena od njegovih funkcij je, da popolnoma onemogoči ustvarjanje revizij. Če želite to narediti, morate iti v skrbniški razdelek Clearfy Pro in na zavihku Dodatno aktivirajte nastavitev Popolnoma onemogočite revizije.

druge metode

Vtičnik za nadzor revizij

Nadzor revizij je ločen vtičnik za upravljanje revizij na spletnem mestu WordPress. Njegova glavna značilnost je možnost določitve, za katere vrste objav (strani ali objave) naj bo prepovedano ustvarjanje kopij.

Torej, ko ga namestite in aktivirate, morate iti na skrbniško ploščo Nastavitve -> Revizije.

Za želeno vrsto objave lahko onemogočite ustvarjanje revizij. Za to se uporabljajo ustrezna polja: Objave in Strani. Če želite shraniti vse spremembe, kliknite gumb Shrani spremembe.

Onemogoči vtičnik Post Revision

Disable Post Revision je ločen vtičnik, ki opravlja samo eno funkcijo - popolnoma onemogoči ustvarjanje kopij vsebine. Če želite to narediti, ga morate samo namestiti in aktivirati. Glavna prednost vtičnika je odsotnost strani z nastavitvami. Svoje delo začne opravljati takoj po aktivaciji.

Pozdravljeni vsi, moji dragi bralci spletnega mesta. Nedolgo nazaj smo si ogledali temo WordPress. Toda ravno pred dnevi sem moral temu članku dodati še eno metodo. Izjemno učinkovito, ko že dolgo pišete blog, pod pogojem, da tega trika niste poznali.

Te tako imenovane revizije ali, z drugimi besedami, izdaje obstajajo že od starejših različic cms Wordpress.

Zakaj so potrebne naknadne revizije?

Revizije objav in strani so potrebne le v teoriji. Bistvo je, da shranijo varnostno kopijo vašega članka v bazo podatkov. Poleg tega se shranjevanje zgodi vsakič, ko spremenite.

Izkazalo se je, da se v procesu pisanja članka, ko kliknete gumb »Shrani«, ustvari kopija vašega članka z vašimi spremembami. In kadar koli si lahko ogledate seznam teh kopij in izberete najprimernejšo ter jo obnovite.

V vsej svoji praksi sem moral samo enkrat obnoviti kopijo iz takih rezerv. Ampak kljub temu.

Na prvi pogled se zdi funkcija precej uporabna. Vendar morate razumeti, da je vsako takšno shranjevanje dodatna obremenitev baze podatkov, ker tam so shranjene vse kopije.

Tukaj je primer iz življenja. V povprečju sem imel 4-5 revizij vsakega članka na svojem blogu. Predstavljajte si, da imate na stotine napisanih člankov in morda na tisoče člankov - z odstranitvijo revizij (edicij) objav - boste s tem svoj blog pospešili za 5-krat.

Kaj pa, če nimate 5 revizij, ampak 10 za vsako objavo? Mimogrede, koliko jih imate, če ni skrivnost? Pišite o tem v komentarjih, prosim.

Mimogrede, najbolj zanimivo je, da se revizije objave samodejno ustvarijo, ko sploh ne kliknete gumba »Shrani«. To se imenuje samodejno shranjevanje.

Kako lahko omejim število urejanj objave?

Že vemo, da so vse revizije shranjene v bazi podatkov. Za spremembo njihovega števila potrebujemo standardni “filter”, ki se imenuje wp_revisions_to_keep, ali uporabo direktive WP_POST_REVISIONS v datoteki wp-config.php.

Mimogrede, iz nekega razloga direktiva v datoteki wp-config zame ni delovala. Napišite, za koga deluje v novih različicah WordPressa?

Torej, recimo, da želimo pustiti možnost shranjevanja revizij, vendar pustiti, recimo, samo 3 kose. Za to moramo napisati naslednje:

Funkcija my_revisions_to_keep($revisions) ( return 3; ) add_filter("wp_revisions_to_keep", "my_revisions_to_keep");

Z uporabo wp_revisions_to_keep lahko tudi omejite število kopij v različnih vrstah objav. Natančneje, v eni vrsti je eno število revizij, v drugi - drugo.

No, recimo, da potrebujete 5 revizij za strani in 3 revizije za članke (objave) in druge vrste objav.

Funkcija my_revisions_to_keep($revisions, $post) ( if ("page" == $post->post_type) return 5; else return 3; ) add_filter("wp_revisions_to_keep", "my_revisions_to_keep", 5, 2);

Lahko poskusite uporabiti tudi WP_POST_REVISIONS v datoteki wp-config.php, vendar ta metoda ne omogoča ločevanja vrst objav.

define("WP_POST_REVISIONS", 3);

Kako onemogočiti in/ali izbrisati revizije v wordpressu

Na enak način lahko v celoti zavrnete revizije. V omejitve morate samo vnesti številko 0.

Funkcija my_revisions_to_keep($revisions) ( return 0; ) add_filter("wp_revisions_to_keep", "my_revisions_to_keep");

Ali z uporabo datoteke wp-config.php:

Define("WP_POST_REVISIONS", 0);

Najpomembnejše. Onemogočanje revizij na noben način ne bo vplivalo na njihov obstoj (že obstoječih). tiste. če ste imeli 3-5 revizij za vsak članek in ste onemogočili revizije, bodo stare kopije objav še vedno ostale. Izbrisati jih je treba ročno prek baze podatkov.

Kako izbrisati vse revizije in izdaje

Zato smo onemogočili urejevalnike. MI že vemo, da preprosto onemogočanje urejevalnikov ni dovolj. Morate jih izkoreniniti in izbrisati ročno prek MySQL.

Začnimo, mislim. Toda preden karkoli izbrišete, naredite varnostno kopijo. Bolje je narediti varnostno kopijo celotne strani.

DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%");

Nekaj ​​podobnega naredimo za taksonomije

DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%");

In seveda izbrišemo same revizije.

DELETE FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%";

Ta poizvedba MySQL bo izbrisala vse revizije v vaši bazi podatkov. Razen samodejnih shranjevanj.

Samodejno shranjevanje se šteje tudi za revizijo, vendar se ne izbrišejo ali onemogočijo!! Zato, da bodo čim manjša, vnaprej napišite besedila v Wordu in jih nato preprosto prilepite v skrbniško ploščo!

Majhen opomnik o tem, kako delati z MySQL

Če ste nenadoma pozabili.

Delam z gostovanjem adminvps, v tem članku sem vam celo povedal, zakaj. Torej, pokazal bom vse na njem.

Prijavite se v phpMyAdmin na nadzorni plošči gostovanja.

Vnesite svojo prijavo in geslo.

Izbrali smo bazo, ki jo potrebujemo, in kliknili gumb SQL, ki se nahaja na vrhu.

In vidimo veliko polje za pisanje poizvedb SQL. Za celotno bazo podatkov.

Tam vnesemo vse zahteve po vrsti.

Ne skrbite, če vidite ničelne vrednosti, to pomeni, da preprosto niste uporabili levih vrst objav ali taksonomij.

In to sem dobil z zadnjo zahtevo.

Poglejte, kako je moj blog po tem postal hitrejši. To je samo pravljica!

Prepričan sem, da imate isto! Preverite in mi pozneje pišite o tem.

Vtičnik za delo z urejevalniki objav

Priporočam tudi vtičnik Revision Control, ki vam omogoča, da naredite isto, kot sem opisal, le v bolj udobnem načinu za vas. Prav v skrbniški plošči.

Če imate še vprašanja, vprašajte, z veseljem vam bom pomagal. To je vse za zdaj. Hvala za vašo pozornost.

Ko ustvarjate, urejate in shranjujete članke in njihove osnutke v WordPressu, se privzeto samodejno ustvarijo varnostne kopije objav, ki se običajno imenujejo Revizije ali izdaje(revizije).
Shranjevanje revizij je seveda koristno, saj imate na primer v primeru napak pri oblikovanju gradiva ali okvarah vašega računalnika ali strežnika možnost, da obnovite katero koli od prejšnjih verzij vašega posnetka. Toda funkcionalnost shranjevanja revizij ima tudi negativno stran.

Navsezadnje so vse varnostne kopije (revizije, izdaje) shranjene v zbirki podatkov vašega spletnega dnevnika v tabeli wp_posts. In če ste ustvarili veliko zapisov in so bili hkrati pogosto urejeni, bo velikost baze podatkov prevelika. Poleg tega se bo upočasnilo izvajanje poizvedb v bazi podatkov.

Seznam razpoložljivih revizij si lahko ogledate na dnu strani za urejanje objave:

Revizije, izdaje WordPress objav

Onemogočite, omejite, izbrišite revizije WordPressa Izkazalo se je, da sploh ni težko.
Oglejmo si vse po vrsti na primeru WordPressa 3.3.1.

Vendar ne pozabite narediti varnostne kopije vaše baze podatkov, preden naredite spremembe!

Onemogočanje revizij v WordPressu

Če želite onemogočiti ustvarjanje revizij (edicij), morate v datoteko dodati eno vrstico wp-config.php

Define("WP_POST_REVISIONS", 0);

Define("WP_POST_REVISIONS", false);

Obstaja še ena možnost za onemogočanje revizij - spremenite eno od vrednosti iz "true" v "0" ali "false" v funkciji wp_functionality_constants(), ki je v datoteki /wp-includes/default-constants.php

Funkcija wp_functionality_constants() ( ... if (!defined("WP_POST_REVISIONS")) define("WP_POST_REVISIONS", false); ...

Omejite število revizij v WordPressu

Če želite omejiti število revizij (izdaj), morate v datoteko dodati eno vrstico wp-config.php, kot je bilo pri onemogočanju revizij, vendar namesto vrednosti »0« ali »false« podajte celo število:

Define("WP_POST_REVISIONS", 3);

V tem primeru bodo ustvarjene največ 3 revizije na članek in ena kopija »Samodejno shranjevanje«.

Opomba za spomin:
Zgornje spremembe ne bodo takoj zmanjšale števila revizij, ki že obstajajo v bazi podatkov. Toda spremembe bodo začele veljati ob posodobitvi obstoječih zapisov in ločeno. Upoštevani bodo tudi pri ustvarjanju novih vnosov. Upoštevati je treba tudi, da bo v načinu urejanja poleg revizij v bazi podatkov ena sama kopija zapisa vsakih 60 sekund zabeležena kot »Samodejno shranjevanje«.

Iz baze podatkov izbrišite vse revizije WordPressa

Če vaš blog obstaja že dolgo in ima veliko objav, potem ne bo škodilo, če optimizirate njegovo bazo podatkov tako, da izbrišete predhodno ustvarjene revizije (izdaje) in s tem zmanjšate velikost tabele wp_posts.

Pozor! Preden izbrišete vse revizije, ne pozabite narediti varnostne kopije baze podatkov! V nasprotnem primeru ne bo več mogoče obnoviti izbrisanih revizij.

Torej moramo izvesti več dejanj:

1. Prijavite se v nadzorno ploščo baze podatkov, na primer phpMyAdmin;
2. Izberite ime baze podatkov, ki jo uporablja vaš blog;
3. Kliknite na gumb (ali zavihek) z oznako “SQL” (običajno se nahaja na vrhu strani);
4. V polje Poizvedbe SQL vnesite to poizvedbo:

DELETE FROM wp_posts WHERE post_type = "revizija";

5. Kliknite gumb »V redu«, da zaključite zahtevo;

To je vse. Zdaj baza podatkov vašega spletnega dnevnika ali natančneje tabela wp_posts, se je močno zmanjšal.

Na koncu bi rad povedal, da zgoraj primer brisanja revizij(izdaje) je najenostavnejši in najbolj neprilagodljiv. Morda ne boste želeli izbrisati vseh revizij, ampak selektivno, na primer tako, da v vsakem vnosu pustite zadnje tri revizije. V tem primeru boste morali zagnati naprednejšo poizvedbo v bazi podatkov ali uporabiti poseben vtičnik. Na srečo obstaja veliko vtičnikov za upravljanje revizij in baz podatkov.

Pozdravljeni dragi bralci. Danes bi rad govoril o revizijah v WordPressu, o tem, kako lahko omejite, kolikokrat se shranijo v bazo podatkov na objavo ali stran, in kako jih onemogočiti in popolnoma izbrisati.

Kaj so izdaje in zakaj so potrebne?

Uvodniki (revizije) v WordPressu- To so varnostne kopije, ki se shranijo v zbirko podatkov ob vsaki posodobitvi objave ali strani. Po eni strani je to priročno, saj lahko kadar koli obnovite varnostno kopijo članka, saj WordPress shrani absolutno vse varnostne kopije. Toda predstavljajmo si, da imate zelo obremenjen projekt z visokim dnevnim prometom in ogromno vsebine. Kaj potem? Takrat lahko baza podatkov doživi ogromne obremenitve. Kaj lahko storimo? Če še vedno potrebujete revizije objav in strani, lahko omejite, kolikokrat se shranijo, ali pa jih popolnoma onemogočite in izbrišete ter tako zmanjšate obremenitev.

Omejitev števila shranjenih revizij

Število revizij v WordPressu je mogoče omejiti na dva načina:

  1. Uporaba konstante WP_POST_REVISIONS ;
  2. Uporaba kaveljčka wp_revisions_to_keep (ta kavelj vam omogoča tudi izbiro vrste objav, za katere je nastavljena omejitev, pa naj bodo to standardne ali prilagojene vrste objav).

Če želite omejiti število revizij shranjevanja s konstanto WP_POST_REVISIONS, morate v konfiguracijsko datoteko wp-config.php (nahaja se v korenu spletnega mesta) dodati naslednjo kodo:

Define("WP_POST_REVISIONS" , 1);

Zdaj bo za vsako objavo in stran ena revizija shranjena v bazi podatkov.

Kot sem zapisal zgoraj, kljuka wp_revisions_to_keep ponuja več možnosti. Spodaj je primer kode za omejevanje števila shranjenih revizij s komentarji, ki jih morate dodati v datoteko functions.php svoje teme:

/** * Omejitev števila shranjevalnih revizij z uporabo kljuke wp_revisions_to_keep * @param integer $count - število revizij * @param object $post - post object */ function limit_save_revisions_db($count, $post) ( if ($post- >post_type = = "stran") (//za standardne WordPress strani, shranite 1 revizijo, vrnite 1; ) elseif ($post->post_type == "objava") (//za standardne WordPress objave, shranite 3 revizije, vrnite 3; ) elseif ($post ->post_type == "recenzije") (//za vrsto objave po meri "Recenzije" ne shranimo revizij, vrne 0; ) else (//za vse ostale shranimo 3 revizije, vrne 3; ) ) add_action("wp_revisions_to_keep", "limit_save_revisions_db" , 10, 2);

Dokončajte onemogočanje in brisanje revizij

Če se odločite v celoti onemogočiti revizije na svojem spletnem mestu, lahko uporabite tudi kavelj wp_revisions_to_keep tako, da dodate naslednjo kodo v datoteko functions.php vaše teme:

/* * Skupna deaktivacija revizij * @param integer $count - število revizij */ function deactivate_revisions($count) ( return 0; ) add_filter("wp_revisions_to_keep", "deactivate_revisions");

Poleg tega je po popolnem onemogočanju izdaj priporočljivo, da jih izbrišete iz baze podatkov. Navsezadnje so bili pred zaustavitvijo še vedno ohranjeni in bodo zdaj tam ležali kot nepotrebna "mrtva" teža. Če želite to narediti, morate iti v PHPMyAdmin, poiskati želeno bazo podatkov in v njej odpreti tabelo wp_posts. Nato kliknite zavihek SQL in izvedite naslednjo poizvedbo:

DELETE FROM `wp_posts` WHERE post_type = "revision";

Zdaj morate izbrisati vse metapodatke (tabela wp_postmeta) in taksonomije (tabela wp_term_relationships) izdaj. Da bi to naredili, izvedemo še 2 poizvedbi:

DELETE FROM wp_postmeta WHERE post_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%"); DELETE FROM wp_term_relationships WHERE object_id IN (SELECT ID FROM wp_posts WHERE post_type = "revision" AND post_name LIKE "%revision%");

Seveda je najbolje, da varnostno kopirate bazo podatkov, preden zaženete te poizvedbe.

To je vse. Upam, da vam je bil članek koristen. Srečno vsem!!!