El reemplazo de textos en MySQL es sencillo. Yo lo he utilizado para el blog ya que al hacer unos cambios perdí las ñ, acentos y diversos caracteres de los títulos en los post.
La sintagsis es muy sencilla:
UPDATE tabla SET campo = REPLACE(campo,'texto a buscar','nuevo texto');
Ahora para el caso en concreto que nos trae, aplicar para los títulos de los post en wordpress sería:
update wp_posts set post_title = replace(post_title, 'ñ', 'ñ');
update wp_posts set post_title = replace(post_title, 'á', 'á');
update wp_posts set post_title = replace(post_title, 'ó', 'ó');
update wp_posts set post_title = replace(post_title, 'Ã', 'í');
update wp_posts set post_title = replace(post_title, 'íº', 'ú');
update wp_posts set post_title = replace(post_title, 'í‘', 'Ñ');
update wp_posts set post_title = replace(post_title, 'ú', 'ú');
update wp_posts set post_title = replace(post_title, 'í©', 'é');
update wp_posts set post_title = replace(post_title, '–', '–');
Para el contenido del post sería:
update wp_posts set post_content = replace(post_content, 'ñ', 'ñ');
update wp_posts set post_content = replace(post_content, 'á', 'á');
update wp_posts set post_content = replace(post_content, 'ó', 'ó');
update wp_posts set post_content = replace(post_content, 'Ã', 'í');
update wp_posts set post_content = replace(post_content, 'íº', 'ú');
update wp_posts set post_content = replace(post_content, 'í©', 'é');
update wp_posts set post_content = replace(post_content, 'ú', 'ú');
update wp_posts set post_content = replace(post_content, 'í‘', 'Ñ');
Todo este proceso se tiene que hacer en las tablas donde sea necesario, por ejemplo, en los comentarios, plugins, … Dependerá de casa caso.
UPDATE tabla SET campo = REPLACE(campo,'texto a buscar','nuevo texto');