Je tomu už skoro měsíc, kdy se v diskuzi ve Facebook skupině věnující se WordPressu objevil dotaz, jak smazat všechny spam komentáře, které jsou označeny, jako spam.

Rozhodl jsem se na tento problém podívat detailněji.

Abychom předešli nedorozumění pojďme si ukázat, jaké typy komentářů budeme mazat:

 

Jedná se tedy o všechny komentáře v záložce spam.

Smazání komentářů pomocí SQL dotazu

Jako základním krokem vidím smazání komentářů přes SQL dotaz do databáze. Všechny komentáře se nacházejí v tabulce wp_comments 

Rozdělení komentářů je ve sloupečku comment_approved. Dotazy mohou tedy vypadat takto:

 

Smazání všech komentářů, které čekají na schválení

DELETE from wp_comments WHERE comment_approved = \’0\’;

 

 Smazání všech komentářů, které jsou již schválené

DELETE FROM wp_comments WHERE comment_approved = \’1\’;

 

Smazání všech komentářů v koši

DELETE FROM wp_comments WHERE comment_approved = \’trash\’;

 

 A konečně smazání všech komentářů označených jako spam

DELETE FROM wp_comments WHERE comment_approved = \’spam\’;

 

Osobně volím tuto možnost, protože pokud to děláte například přes phpMyAdmin, tak si rovnou můžete udělat zálohu, kdyby náhodou 🙂

Po provedení dotazu na smazání spam komentářů budete mít databázi očištěnou od těchto špinavých komentářů 🙂

 

A zkontrolovat to opět můžeme v administraci WordPressu:

 

Použitím pluginu

Pro lenochy a pro ty, kteří se nebojí nacpat si do WP další plugin jsou tu plugin WPCommentCleaner. Který po nainstalování pomůže s mazáním komentářů.

Po instalaci se plugin objeví přímo v menu v administraci WordPressu:

 

No a samozřejmě nabídka, obsahující bohužel jen 3 typy komentářů a to neschválené komentáře, spam komentáře a schválené komentáře.

Po smazání dojde tedy k odstranění komentářů podle zvoleného “filtru” 🙂 Bohužel bez možnosti zálohy nebo smazání komentářů z koše.

 

A jak řešíte mazání komentářů ve WordPressu vy? Manuálně mažete přes administrac,i nebo máte lepší způsob? 🙂