O que estou tentando fazer é automatizar a criação de sites wordpress para a empresa em que trabalho. Temos muitas informações em nosso banco de dados para nossos clientes e queremos criar um site wordpress para cada cliente. O processo funciona muito bem e não temos problemas com a criação de sites/transferência de dados ou algo parecido.
O problema que temos é quando compramos um novo domínio (http://www.newdomain.com) nosso processo é interrompido (chamamos um procedimento armazenado que instala todos os dados após a URL ser chamada para instalar o wordpress) se o domínio demorar mais de 15 minutos para ser resolvido. Tentamos fazer um loop (onde o processo verifica se o domínio resolve e continua tentando - mas eventualmente falha). Então, o que estamos procurando é ver se existe uma maneira de instalar uma URL sem realmente ter o domínio resolvido ainda.
Eu vi onde há possibilidades de alterar o arquivo wp-config, mas isso não funciona, pois temos mais de um domínio e altera o URL de origem para todos os domínios. O que realmente precisamos é apenas de uma maneira de iniciar manualmente o script de instalação por meio de uma chamada por meio de um banco de dados ou de alguma outra forma que não verifique se o domínio está resolvido ou apontando para o servidor ou não.
Obrigado por qualquer sugestão.
EDIT: Tudo o que fazemos para instalar o wordpress é chamar este URL: http://"newdomain".com/wp-admin/install.php?step=2 - se você alterar as configurações no backend, chamar este URL instalará o wordpress sem ter para passar pelo formulário wp-admin/install.php
Responder1
Como Amadan disse: Você pode conectar temporariamente a resolução de nomes.
Mas o que eu faria nesse caso é um arquivo ou tabela de banco de dados que contenha todos os domínios para configuração. Depois, basta fazer um cronjob tentar uma chamada DNS a cada 1-5 minutos. Assim que o domínio estiver acessível, inicie a configuração e exclua esse domínio do arquivo/tabela.
Responder2
telnet 1.2.3.4 80
GET /wp-admin/install.php?step=2 HTTP/1.0
Host: www.domain.com
Contanto que você saiba o endereço IP que precisa acessar e o nome de domínio que está tentando acessar, não será necessário modificar /etc/hosts
Curl, nc, wget podem enviar solicitações de cabeçalho, assim como uma simples conexão de soquete em seu script de instalação.
Responder3
Uma maneira muito simples de atingir o objetivo desejado é configurar uma instância do Wordpress da maneira usual, talvez em um sistema de teste off-line. A versão instalada nada mais é do que uma árvore de diretórios de arquivos e um banco de dados.
- Usando o conhecimento existente ou uma pesquisa nos arquivos, localize os itens que precisarão ser modificados para que funcione em outra instalação.
- Despeje o banco de dados Wordpress em um arquivo.
- Crie um script que possa aceitar entradas, talvez de um arquivo, e modifique os itens que precisam ser alterados para uma nova instalação, usando sed, Perl ou qualquer outra coisa que você desejar.
- Faça o mesmo para todos os itens que precisam ser alterados no arquivo de despejo do banco de dados.
- Script de criação de usuário e senha Wordpress para o banco de dados, crie o banco de dados vazio e defina as permissões necessárias.
- Agora basta copiar os arquivos do Wordpress para o local de destino, definir as permissões, carregar o arquivo de despejo do banco de dados e testá-lo.
- Enxague e repita...
Responder4
Apenas useWP-CLI. Para instalar um novo blog, digite
wp core download
wp core install