För en tid sedan visade jag dig hur man hanterar WordPress-webbplatser med hjälp av kommandon; det var genom ett Perl- skript . I det här fallet ska jag visa dig specifikt hur man hanterar WordPress-kommentarer med hjälp av SQL-frågor, det vill säga med hjälp av kommandon i MySQL-konsolen.
Det första du måste tänka på är att de måste ha tillgång till MySQL-terminalen eller konsolen, antar att vi kommer åt servern med SSH och inuti den skriver vi:
mysql -u rot-p
När du har skrivit detta och tryckt på Enter kommer den att be om MySQL-användarens lösenord. Skriv in det, tryck på Enter igen, och det är allt, du har loggat in.
Väl inne i MySQL-skalet måste vi ange vilken databas vi ska använda, du kan se tillgängliga databaser med:
visa databaser;
Detta visar dig, som sagt, de tillgängliga databaserna. Låt oss anta att den önskade heter sitiowordpress , låt oss använda den:
använd sitewordpress;
Låt oss granska vad tabellerna heter med:
visa bord;
Detta kommer att berätta namnen på tabellerna, extremt viktigt eftersom vi måste se exakt vad namnet på tabellen är relaterat till kommentarerna: kommentarer
Det kallas vanligtvis wp_comments eller liknande, det viktiga är att det alltid slutar på: kommentarer
Ta bort SPAM-kommentarer
Med den här raden raderas alla kommentarer som är markerade som SPAM:
RADERA från wp_comments WHERE comment_approved = 'skräppost';
Ta bort alla kommentarer i väntan på moderering
RADERA FRÅN wp_comments WHERE comment_approved = '0';
Ersätt text i alla kommentarer
Antag att vi vill söka i alla kommentarer efter ordet "politisk" och ersätta det med "korrupt", det skulle vara:
UPPDATERA wp_comments SET `comment_content` = BYT ut (` comment_content`, 'politicos', 'corruptos');
Ta bort kommentarer baserat på författarens webbadress
Låt oss anta att vi av en viss anledning vill eliminera alla kommentarer från alla användare som, när de kommenterar, har angett data i kommentarformuläret (namn, webbplats och e-post) att deras webbplats var http://taringa.com (för att nämna ett exempel) , skulle det då vara så här:
RADERA från wp_comments VAR comment_author_url LIKE 'http://taringa.com';
Stäng kommentarer på gamla artiklar
Jag känner till människor som vill stänga kommentarerna på gamla inlägg på sina webbplatser, så de måste redigera inläggen en efter en för att inaktivera alternativet "kommentarer aktiverat" i var och en, den här raden löser deras liv:
UPPDATERA wp_posts SET comment_status = 'closed' WHERE post_date <'2010-02-10' AND post_status = 'publish';
Som du kan se är mitt datum ett datum, 2010-02-10, det betyder att alla inlägg som publiceras och har ett publiceringsdatum lägre än 10 februari 2010 (det vill säga de har publicerats tidigare ) kommer att stänga kommentarerna, ingen kommer att kunna kommentera dem längre.
Stäng kommentarer på alla artiklar
Om du inte bara vill stänga kommentarerna i vissa inlägg, men i det hela taget, hjälper den här raden dig:
UPPDATERA wp_posts SET comment_status = 'closed', ping_status = 'closed' WHERE comment_status = 'open';
Om du vill vända detta ändrar du stängt för att öppna och vice versa, och voila, kör igen linjen med ändringarna.
Radera kommentarer som görs inom ett visst tidsintervall
Antag att vi vill ta bort alla kommentarer som gjordes den 1 april 2014, mellan 4:15 på eftermiddagen och 10:40 på natten, så skulle raden vara:
RADERA FRÅN wp_comments WHERE comment_date> '2014-04-01 16:15:00' AND comment_date <= '2014-04-01 22:40:00';
Som du kan se är tiden i 24-timmarsformat, det vill säga militärtid.
Slutet!
Tja, inget mer att lägga till, jag vet att mer än en kommer att tycka att det är intressant.
hälsningar