Já passei pelas etapas para extrair um site de uma instalação multisite para uma única instância agora:
- Configure uma cópia limpa do WP, mas não instale-a
- Encontrar o ID do site
- Copie os arquivos de blogs.dir / ID / files para a nova pasta de uploads do WP
- Copie o tema que o site usa e os plugins usados nas pastas apropriadas na nova pasta wp-content
- Faça um backup do banco de dados multisite, mas apenas as tabelas para o site de destino e as tabelas users e usermeta usando o ambiente de trabalho do MySQL ou equivalente
- Restaure o backup para um novo banco de dados e altere os prefixos do nome da tabela para que sejam todos iguais, por exemplo. 'wp_SITEID_' para 'wp _'
- Usar o ambiente de trabalho do MySQL ou o navegador de consulta organiza as tabelas users e usermeta da seguinte forma:
-
DELETE FROM wp_usermeta WHERE user_id NOT IN( SELECT distinct(user_id) FROM wp_usermeta where meta_key LIKE 'wp_SITEID_%' );
-
DELETE FROM wp_users WHERE ID NOT IN( SELECT distinct(user_id) FROM wp_usermeta where meta_key LIKE 'wp_SITEID_%' );
-
UPDATE wp_usermeta SET meta_key = REPLACE( meta_key, 'wp_SITEID_', 'wp_' ) WHERE meta_key LIKE 'wp_SITEID_%';
-
UPDATE wp_options SET option_name = REPLACE( option_name, 'wp_SITEID_', 'wp_' ) WHERE option_name LIKE 'wp_SITEID_%';
-
- Comece o processo de instalação do WP para criar um
wp-config.php
, mas não clique em "Executar a instalação" - Crie um arquivo .htaccess padrão se os permalinks estiverem em uso ou apenas visite a página de permalinks em wp-admin
- Você precisará atualizar os URLs antigos em seu banco de dados a seguir. O ideal é usar uma ferramenta de pesquisa / substituição segura, como a do wp-cli ou seu precursor de uso geral search/replace db por interconexão / it . Especificamente, substitua
blogs.dir/SITE_ID/files
poruploads
e, se você alterar a pesquisa de URL do site poroldsite.com
e substitua pornewsite.com
.
Um pouco de esforço e você tem que ter cuidado com as edições do banco de dados, mas é o único que posso ver para extrair um único site de um multisite existente com todas as suas configurações, etc ... intacta.
EDITAR:
Como visto por @Jake eu esqueci de mencionar os passos finais que você pode ter que dar, por exemplo. pesquisar / substituir URLs antigos. Eu atualizei a lista de acordo.