Find and replace sul database di WordPress

L'aggiornamento alla versione 2.9 di WordPress introduce la gestione automatica degli embed, ho deciso quindi di disattivare il plugin Viper's Video Quicktags, che ha la medesima funzione. Il problema era però quello di modificare i tag usati da questo plugin: [youtube][/youtube] con [ embed][/embed]. Per effettuare questa sostituisce bisogna adottare la mitica funzione find and replace, ma come fare?

Per coloro che non si sentissero a loro agio a destreggiarsi con SQL, consigli l'adozione del plugin Search and Replace.  Io non l'ho provato ma confido sul fatto che funzioni a dovere. 🙂

Per cercare e sostituisce in modo manuale è necessario entrare nel panello phpmyadmin ( o altro ) ed eseguire una semplice query.

UPDATE wp_posts SET post_content = REPLACE(post_content, '[youtube]', '');

Mentre questo è l'enunciato esplicativo:

UPDATE [your_table_name] SET [your_table_field] = REPLACE([your_table_field], '[string_to_find]' , '[string_to_be_replaced]');

Potete trovare altre informazione a questo indirizzo della documentazione ufficiale MySQL. 😉

Mi stavo scordando di dire. Se non siete espertissimi vi conviene fare un backup della tabella wp_posts, in modo da non trovarvi in situazioni spiacevoli... molto spiacevoli. 🙂

C'è da dire che questa query è davvero versatile, io l'ho usata per modificare due semplici tag, ma potrebbe essere usata in altri mille mila modi. Se ad esempio cambiate l'URL del vostro blog, e volete modificare tutti i vecchi URL presenti sostituendoli con quello nuovo... questa funzione fa decisamente per voi.