Gestire commenti wordpress tramite database e query SQL
GESTIRE COMMENTI WORDPRESS TRAMITE DATABASE E QUERY SQL
(Aggiornato il 11/04/2018)
Come molti di voi sapranno, wordpress offre già un’interfaccia apposita per la gestione dei commenti ma la gestione deve essere fatta singolarmente per ogni commento, in questo articolo vedremo come gestire commenti wordpress tramite database e query SQL.
Tramite database e query SQL è possibile gestire commenti di wordpress in blocco, cioè con una singola query SQL si possono gestire commenti wordpress in una sola volta e questo risulta molto utile in caso il vostro sito abbia ricevuto migliaia di commenti.
Ad esempio qualche mese fa un mio cliente aveva necessità di modificare un contenuto di testo personalizzato che aveva inserito nel fondo di tutti i commenti wordpress del sito, considerato che avrei dovuto modificare oltre 2400 commenti singolarmente, ecco la soluzione di utilizzare le query SQL.
Addirittura è possibile eliminare dei commenti in articoli un po’ datati e per eliminarli invece di doverli andare a cercare nell’elenco dei commenti nel pannello di controllo di wordpress, è possibile utilizzare una query SQL che permette di eliminare commenti wordpress tra due date e orari specifici.
Esistono diversi strumenti per utilizzare le potenzialità e le funzionalità di database MySQL uno dei più conosciuti ed utilizzati ovviamente è il software phpMyAdmin, che mette a disposizione gratuitamente il programma “XAMPP” ad interfaccia grafica che installato e configurato nel proprio computer permette di gestire qualsiasi database MySQL da remoto.
Sicuramente per i meno esperti il software phpMyAdmin non è una scelta molto consigliata, una funzione però molto utile messa a disposizione nel sito è la possibilità di visualizzare una versione demo.
Altra possibilità è sempre utilizzando software phpMyAdmin, però installato e già pronto all’uso attraverso il pannello di controllo del vostro hosting, se il vostro hosting per wordpress non vi mette a disposizione questa funzione, cambiate hosting.
Altra scelta e forse la più utilizzata dei meno esperti è quella di utilizzare dei plug-in, ne esistono diversi, vi basta fare una ricerca nella directory dei plug-in nel sito di wordpress.org con le keywords “query sql” quello che consiglio personalmente è il plugin per gestione database miwosql.
Come sempre è D’OBBLIGO eseguire un backup del database di wordpress prima di eseguire qualsiasi operazione.
ELENCO QUERY SQL PER DATABASE MySQL:
ATTIVARE i commenti per tutti gli utenti:
Questa query permette a tutti gli utenti di inserire commenti in tutto il sito.
UPDATE wp_posts SET comment_status = 'open';
DISABILITARE i commenti per tutti gli utenti:
Questa query disabilita la possibilità per gli utenti di inserire commenti in tutto il sito.
UPDATE wp_posts SET comment_status = 'closed';
ABILITARE i commenti solo per gli utenti registrati:
Questa query SQL abilita la possibilità di inserire commenti solo per gli utenti registrati.
UPDATE wp_posts SET comment_status = 'registered_only';
ABILITARE/DISABILITARE i commenti prima di una data specifica:
Questa query SQL abilitare e/o disabilitare la possibilità di inserire commenti prima di una data specifica. È possibile modificare la funzione “comment_status” per “closed” e/o “open e la data a seconda delle esigenze.
>UPDATE wp_posts SET comment_status = 'closed' WHERE post_date < '01-01-2014' AND post_status = 'publish'
DISABILITARE i commenti in vecchi articoli per data specifica:
Con questa query SQL è possibile disabilitare la possibilità di inserire commenti per articoli vecchi selezionandoli per data specifica.
UPDATE wp_posts SET comment_status = 'closed' WHERE post_date < '01-01-2014' AND post_status = 'publish'
CANCELLARE commenti contenenti un URL autore specifico:
Con questa query SQL è possibile cancellare uno o più commenti che contengono un URL specifico inserito nel campo “Sito web” dall’autore del commento.
DELETE from wp_comments WHERE comment_author_url LIKE "inserirequiurl";
ASSEGNARE articoli di un autore ad un’altro autore:
Con questa query SQL è possibile assegnare gli articoli scritti da un autore di nome X ad un’altro autore di nome Y.
Per sapere ID autore, spostarsi nell’elenco completo degli autori cliccare sopra uno di essi e individuare nella barra degli indirizzi del browser il numero dopo il codice “user_id=”.
UPDATE wp_posts SET post_author = 'vecchio-autore-id' WHERE post_author = 'nuovo-autore-id';
CANCELLARE tutti i commenti per data e ora specifica:
Questa query SQL permette di cancellare tutti i commenti ricevuti per data e ora specifica.
DELETE FROM wp_comments WHERE comment_date > '06-05-2014 01:10:04' AND comment_date <= '06-05-2014 00:10:04'
CANCELLARE tutti i commenti spam:
Utilizzando questa query SQL si cancellato tutti i commenti marcati come spam all’interno della cartella “spam”.
DELETE FROM wp_comments WHERE wp_comments.comment_approved = 'spam';
SOSTITUIRE del testo specifico nei commenti:
Questa query SQL permette di sostituire del testo specifico all’interno di un commento.
UPDATE wp_comments SET `comment_content` = REPLACE (`comment_content`, 'testovecchio', 'nuovotesto'
SOSTITUIRE un URL specifico all’interno di un commento:
Con questa query SQL è possibile sostiuire un URL specifico all’interno di un commento.
UPDATE wp_posts SET post_content = REPLACE (post_content, 'http://www.vecchiourl.it', 'http://www.nuovourl.it';
ABILITARE i pingbacks/trackbacks:
UPDATE wp_posts SET ping_status = 'open';
DISABILITARE i pingbacks/trackbacks:
>UPDATE wp_posts SET ping_status = 'closed';
ABILITARE/DISABILITARE i pingbacks/trackbacks prima di una data specifica:
Come noterete in questa query per il “ping_status” è stato scelto lo stato di “closed”, quindi in questo caso verrenno disabilitati tutti i pingbacks e i trackbacks per la data impostata.
UPDATE wp_posts SET ping_status = 'closed' WHERE post_date < '08-05-2014' AND post_status = 'publish';
CANCELLARE tutti i pingbacks:
DELETE FROM wp_comments WHERE comment_type = 'pingback';
VIDEO GUIDA:
Di seguito una video guida che mostra l’utilizzo di query SQL per pulire e ottimizzare il database di wordpress, ovviamente il procedimento dimostrato in questo video è lo stesso per le query sopra riportate, cambiano solo le query SQL.
Articoli interessanti:
Query sql per pulire e ottimizzare database wordpress
Plugin per ottimizzare il database di wordpress
Rinominare prefissi tabelle database di WordPress
Trasferire o Spostare WordPress
Sicurezza wordpress: Protezioni e impostazioni
Vietata la Riproduzione.
Salve,avrei bisogno di 2 informazioni.Vorrei sapere:
come posso rimuovere l’orario e la data dai commenti wordpress?
E anche come si può modificare la scritta “Autore articolo” in
“Ideatore dell’articolo”?
Premetto che sto utilizzando un tema twentytwelve-child.
Grazie mille Luciano
Salve Luciano, per rimuovere l’orario e la data la puoi nascondere utilizzando codice CSS
.comments-area article header time {
display: none;}
Oppure eliminare nel file functions.php del tema il seguente codice:
Per l’ultima domanda ti basta modificare il file di gestione della lingua del tema “twentytwelve.pot”. Saluti.
Scusa Admin se ti rispondo ora o VI rispondo ora, a seconda di quanti siete. Grazie mille per la comunicazione! Mi avete risolto un bel problema. Un grazie Luciano :)