Jos käytössä on WordPressin oletuskommentointi, tällöin on hyvin todennäköistä, että sivustolle alkaa suosion kasvaessa tulla yhä enemmän automaattisten bottien syöttämiä spam-kommentteja.  Ongelma ei ole erityisen suuri, jos kommentteja tulee harvakseltaan, mutta joillakin sivustoilla määrä saattaa räjähtää käsiin. Vaikka roskapostisuodattimet saattavatkin siirtää kommentit suoraan spam-laatikkoon, sekin saattaa ajan myötä tulla ongelmaksi. Tällä kertaa käymme läpi, miten poistaa iso määrä spam-kommentteja suoraan tietokannasta.

Miksi poistaa?

Miksi sitten spam-kommentteja pitäisi poistaa? Nehän ovat kommenteissa omassa osiossaan, eikä niitä näytetä julkisella puolella. Tähän on parikin syytä. Ensimmäiseksi tietokannan kasvun mukana saattaa myös tulla suorituskyvyllisiä ongelmia. Toiseksi varmuuskopiointi vie enemmän tilaa. Juuri tällä viikolla poistin eräältä sivustolta 60 000 spam-kommenttia. Tämän myötä tietokannan varmuuskopion koko tippui 120 megatavusta 10 megatavuun. Tietokantavarmuuskopion tilan tarve tippui siis huomattavasti.

Kuinka poistaa?

Erittäin suuren kommenttimäärän poistaminen ei ole mukavaa suoraan ylläpidosta, sillä kommentteja voi listata maksimissaan 999 kappaletta, ja niinpä kommentteja voi poistaa vain 999 kerrallaan.

Kaikki spam-kommentit voi poistaa myös kerralla ajamalla SQL-kyselyn suoraan tietokantaan. Tämä vaatii sitä, että tietokantaan pääsee käsiksi suoraan jollakin työkalulla. Yleensä webhotellien cPanelissa on asennettuna phpMyAdmin, jolla SQL-kyselyn saa suoritettua. Myös tämä ohje on tehty käyttäen phpMyAdminia.

Ensimmäisenä phpMyAdmin pitää löytää cPanelin hallinnasta.

cpanel-phpmyadmin

Tämän jälkeen pitää valita oikea tietokanta, jos niitä on useita.

phpmyadmin-valitse-tietokanta

SQL-välilehdellä pystymme suorittamaan halutun SQL-kyselyn.

phpmyadmin-sql

Kysely on seuraavanlainen:

[etutunniste] tulee muuttaa siihen, mikä se sinun tietokannassasi on. Esimerkissä etuliite on test.

Kun kysely on kirjoitettu kenttään, sen voi suorittaa painamalla Siirry. Tämän jälkeen phpMyAdmin kysyy vielä, että haluaako kyselyn varmasti suorittaa.

phpmyadmin-varmistus

Jos tähän vastaa kyllä, kysely suoritetaan. Kannattaa huomata, että kyselyn ajamisessa saattaa kestää jonkin aikaa, jos poistettavaa on paljon. Suorituksen jälkeen käyttäjälle ilmoitetaan, kuinka monta riviä poistettiin.

phpmyadmin-poistettu

Seuraavaksi kun menee WordPressin ylläpidon kommentit-osioon, siellä ei pitäisi olla enää yhtään spam-kommenttia.

Kirjoittaja Niko Vittaniemi

Hei, Olen Niko Vittaniemi. Olen WP-oppaan ylläpitäjä, WPWoofin perustaja ja puuhamies täällä valoisassa nörttiluolassa Keminmaassa. Myyntivetoiset WordPress ja WooCommerce sivustot ovat lähellä sydäntäni Jos koet, että voin auttaa sinua, yhteystietoni löydät kotisivuiltani.

Keskustele ja kysy

  • Anna sanoo:

    Olen mielestäni toiminut täysin ohjeiden mukaisesti, mutta siitä huolimatta saan tämän ilmoituksen, enkä pysty poistamaan kommentteja:

    #1064 – You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ’[wp]_comments WHERE comment_approved = ’spam” at line 1

    Osaisitko sanoa, mistä tämä johtuu? Tuo etuliite minun tietokannassani on ”wp”, joten kopioin sen tuon sinun ”test”-sanan tilalle. Suuret kiitokset jo etukäteen, jos ehdit vastata!

    • Timo Leiniö sanoo:

      Etutunnisteeseen ei kuulu laittaa ympärille [ ja ] merkkejä, vaan siinä pitäisi olla wp_comments

Lisää uusi kommentti

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *