Renomeando tipos de postagem personalizados e taxonomias

29

Comecei a desenvolver um site com mais de uma dúzia de tipos de postagem personalizados. Gostaria de renomear alguns deles, não apenas o valor de exibição, mas o nome do tipo de postagem personalizado real. Estou preocupado, no entanto, que apenas executando uma consulta SQL update que eu vou perder alguns lugares onde eu preciso mudar as coisas ou substituir parte dos dados serializados. Eu já inseri mais de 3.000 itens, então não posso simplesmente reiniciar com um banco de dados limpo.

Qual seria a melhor maneira de renomear um tipo de postagem personalizado? Que tal renomear uma taxonomia?

    
por Derek Perkins 30.08.2010 / 18:50
fonte

3 respostas

44

Consulta SQL para renomear as postagens:

UPDATE  'wp_posts' SET  'post_type' =  '<new post type name>' WHERE  'post_type' = '<old post type name>';

Consulta SQL para renomear a taxonomia:

UPDATE  'wp_term_taxonomy' SET  'taxonomy' =  '<new taxonomy name>' WHERE  'taxonomy' = '<old taxonomy name>';

Isso deve cuidar de todas as áreas do banco de dados. Apenas lembre-se de combinar os novos nomes no código onde os tipos de postagens ou taxonomias estão registradas. Até onde eu sei, isso não é tratado em nenhum plug-in ainda.

    
por John P Bloch 30.08.2010 / 19:24
fonte
6

Oi @Derek Perkins:

Em geral a resposta de @John P Bloch está em mas com uma ressalva . Plug-ins e até temas personalizados podem e podem armazenar informações de tipo de postagem e, assim, ter certeza de que você não corromperá seus dados para garantir que seus plug-ins e temas não armazenem tipos de postagem ou, se eles atualizarem seus dados também.

Você pode nos dizer quais plugins está usando?

    
por MikeSchinkel 30.08.2010 / 20:50
fonte
4

Se você não quer ter que executar manualmente as consultas SQL, existem alguns plugins que você pode usar:

Eu usei com sucesso Converter tipos de postagem em publicações de mudança em massa.

Para converter postagens individuais, Post Type Switcher é a melhor opção.

    
por Adam Dempsey 31.08.2010 / 13:16
fonte