Como excluir todas as postagens, categorias e tags do database WordPress

Tenho um site WP com mais de 40.000 postagens. Agora eu gostaria de excluir todas as postagens, categorias e tags. Então, todo o conteúdo e meta relacionado. Tudo o que eu quero manter são arquivos estáticos. Existe uma maneira fácil de fazer isso através de database? Alguma consulta para soltar todas as tabelas relevantes? Desculpe, eu não sou bom com db e código, então por favor me dê uma explicação detalhada ou uma consulta completa. Muito obrigado. Plugins ou qualquer outra solução, não funcionam para mim, eu preciso de uma consulta mysql.

Solutions Collecting From Web of "Como excluir todas as postagens, categorias e tags do database WordPress"

Você escreveu que você não é bom com database, então seja extremamente cuidadoso com os conselhos que eu apresentei aqui.

Primeiro, saiba como fazer backup do database wordpress e restaurá-lo a partir do arquivo de backup. Isso é fundamental para salvá-lo da catástrofe.

Em segundo lugar, pode haver um plugin que irá ajudá-lo. Eu não olhei, mas um amigo foi e disse que ele encontrou uma ferramenta de “migration de dados” para wordpress.

Em seguida, você pode excluir dados das tabelas selecionadas. Não “solte” tabelas, pois isso eliminará a estrutura de dados além dos dados. O resultado será um wordpress quebrado. No entanto, há dependencies que você deve entender antes de usar o comando SQL delete.

Uma melhor abordagem seria aprender a usar uma restauração “seletiva”, carregando apenas as tabelas que possuem os dados que deseja manter, por exemplo, usuários do wp. A idéia aqui é usar os arquivos de backup para criar uma configuração de database “base” que se adapte às suas finalidades.

Se você encontrar uma ferramenta de migration de dados, siga este procedimento:

  1. faça backup do database atual

  2. crie um novo database (e site wordpress) e use a ferramenta de migration para mover dados para ele. Use o “novo” site wordpress para testar tudo.

  3. Se você tiver sucesso, ajuste os registros DNS para apontar para o novo site. Você pode ajustar a configuração wp do site original para apontar para o database.

Tenha em mente a integridade dos dados. É extremamente importante.

Espero que algo nisso ajude você.

Embora não seja instantâneo, se você precisar de uma vez que pode ser mais robusto basta fazê-lo através da interface.

Você pode usar as opções de canvas (canto superior direito do administrador) para aumentar a quantidade de itens por página (acho que ele atende até 999, mas talvez seja necessário definir menos para que ele funcione corretamente) e excluí-los por ações em massa página por página .

Odeio publicar uma resposta apenas para o link, mas o plugin do WordPress Suicide é ideal para excluir quase todos os dados de um blog WordPress sem precisar de nenhum conhecimento SQL.

A crie este código:

$the_query = new WP_Query(array( 'post_type' => 'public_agent', 'posts_per_page' => -1 , 'field' => 'ids')); echo $the_query->post_count; while ( $the_query->have_posts() ) { $the_query->the_post(); echo get_the_ID() . ', '; wp_delete_post( get_the_ID ); } 

É muito simples, primeiro obtenha os ids do seu tipo personalizado, com alguns filtros post_type selecione o agente público do tipo personalizado no meu caso, postagens por página selecione o número de postagens, -1 é obter todas as postagens e campo selecione o tipo de campo que eu selecionei apenas ids.

Após a seleção, usei um loop while para remover todos os tipos de postagens personalizadas com wp_delete_post, passando o parâmetro id.

Usei o console de debugging do plugin (debug bar suite) para executar este código.

Use o WP-CLI para remover todas as tabelas do database no MySQL.

Executa instruções DROP_DATABASE e CREATE_DATABASE MySQL usando DB_HOST, DB_NAME, DB_USER e DB_PASSWORD credenciais de database especificadas em wp-config.php.

 wp db reset --yes