Pred časom sem vam pokazal , kako upravljati WordPress spletna mesta z ukazi, natančneje prek Perl skripte . Tokrat vam bom pokazal, kako upravljati WordPress komentarje z uporabo SQL poizvedb, torej z uporabo ukazov v konzoli MySQL.
Najprej morate imeti v mislih, da morajo imeti dostop do terminala ali konzole MySQL, domnevamo, da do strežnika dostopamo prek SSH in v njem zapišemo:
mysql -u root -p
Ko to vnesete in pritisnete Enter , vas bo program vprašal za geslo uporabnika MySQL. Vnesite ga, ponovno pritisnite Enter in to je to, prijavljeni boste.
Ko vstopimo v lupino MySQL, moramo navesti, katero zbirko podatkov bomo uporabljali, in si lahko ogledate razpoložljive zbirke podatkov z:
prikazati podatkovne baze;
Kot sem rekel, vam bo to pokazalo razpoložljive baze podatkov. Predpostavimo, da se želena imenuje sitiowordpress , uporabimo jo:
uporabite sitewordpress;
Oglejmo si, kako se imenujejo tabele:
razstavne mize;
To nam bo povedalo imena tabel, izjemno pomembno, ker moramo videti, kako točno je ime tabele, povezano s komentarji: komentarji
Običajno se imenuje wp_comments ali podobno, pomembno je, da se vedno konča na: comments
Izbriši komentarje z neželeno pošto
V tej vrstici bodo izbrisani vsi komentarji, ki so označeni kot SPAM:
IZBRIŠI iz wp_comments WHERE comment_approved = 'spam';
Izbriši vse komentarje, ki čakajo na moderiranje
IZBRIŠI iz wp_comments WHERE comment_approved = '0';
Zamenjajte besedilo v vseh komentarjih
Recimo, da želimo poiskati besedo "politični" v vseh komentarjih in jo nadomestiti s "skorumpiran":
UPDATE wp_comments SET `comment_content` = REPLACE (` comment_content`, 'politicos', 'corruptos');
Izbrišite komentarje na podlagi URL-ja avtorjevega spletnega mesta
Predpostavimo, da želimo iz določenega razloga odstraniti vse komentarje uporabnikov, ki so pri komentiranju v obrazcu za komentar (ime, spletno mesto in e-pošta) navedli, da je bilo njihovo spletno mesto http://taringa.com (kot primer) , bi bilo potem tako:
IZBRIŠI iz wp_comments WHERE comment_author_url LIKE 'http://taringa.com';
Podrobni komentarji o starih člankih
Poznam ljudi, ki želijo zapreti komentarje o starih objavah na svojih spletnih mestih, zato morajo urejati objave eno za drugo, da onemogočijo možnost »omogočeni komentarji« v vsaki, ta vrstica bo rešila njihovo življenje:
UPDATE wp_posts SET comment_status = 'closed' WHERE post_date <'2010-02-10' IN post_status = 'objavi';
Kot lahko vidite, na sredini vrstice je datum, 2010. 02. 10, to pomeni, da so vsa objavljena sporočila, katerih datum objave je nižji od 10. februarja 2010 (torej objavljeni že prej ) bo komentarje zaprl, nihče jih ne bo mogel več komentirati.
Zapri komentarje o vseh člankih
Če komentarjev ne želite zapreti samo v nekaterih objavah, v vseh pa vam bo v pomoč ta vrstica:
UPDATE wp_posts SET comment_status = 'closed', ping_status = 'closed' WHERE comment_status = 'open';
Če želite to obrniti, spremenite zaprto v odprto in obratno ter voila, znova zaženite vrstico s spremembami.
Izbrišite komentarje, podane v določenem časovnem obdobju
Recimo, da želimo izbrisati vse komentarje, dane 1. aprila 2014, med 4:15 popoldne in 10:40 zvečer, vrstica bi bila:
IZBRIŠI iz wp_comments WHERE comment_date> '2014-04-01 16:15:00' IN comment_date <= '2014-04-01 22:40:00';
Kot lahko vidite, je čas v 24-urni obliki, to je vojaški čas.
Konec!
No, nič več za dodati, vem, da se bo več tem zdelo zanimivo.
pozdrav