Como exibir uma página HTML estática durante a configuração de um site WordPress?


8

Acabei de instalar o Wordpress. Eu tenho uma página de abertura que não é do Wordpress em [pasta raiz] /index.html. Eu gostaria de manter a página inicial enquanto trabalho com a skin do Wordpress. Quando tento acessar o index.php (também na pasta raiz), ele reescreve o URL em index.html. Não vejo index.html no URL, mas a página inicial está lá e nunca vejo o Wordpress.

Eu posso acessar o administrador do Wordpress sem problemas. Alguém sabe como posso acessar o Wordpress sem torná-lo ativo?


3
Você pode usar o plugin WordPress Em construção .
— Realloc #

Respostas:


6

Use um plug-in (como wp-maintenance-mode ) ou codifique seu arquivo .htaccess para redirecionar para a página inicial e permita que seu endereço IP (ou sua equipe) ignore o redirecionamento. Como isso:

<IfModule mod_rewrite.c>

RewriteEngine on
RewriteCond %{REMOTE_ADDR} !^127\.0\.0\.1
RewriteCond %{REQUEST_URI} !/splashpage.html$ [NC]
RewriteRule .* /maintenance.html [R=302,L]

</IfModule>

Com relação à sua dúvida sobre por que o index.html é veiculado a partir do root, é porque geralmente tem precedência sobre o index.php. Se você quisesse mudar isso, teria que mudar o DirectoryIndex.

EDIT: Eu pensei que era óbvio, mas, por uma questão de clareza: 127.0.0.1 deve ser alterado para o seu endereço IP público. Observe também que 302 é redirecionamento temporário, que é o que queremos.


2
Como não posso comentar sobre as respostas de outras pessoas, gostaria apenas de dizer que realmente gosto da resposta @s_ha_dum, mas você deve ter cuidado, pois o Codex do Wordpress afirma claramente: Não passe um nome de função para current_user_can(), pois isso não garante funcione corretamente.
— Sunyatasattva

Eu tentei sua sugestão e ela não tem efeito. Quero que index.html seja exibido. Também quero acessar manualmente a página index.php do Wordpress. Mas isso faz com que o redirecionamento seja index.html. Não sei por que você está dizendo "redirecionar para a página inicial". É exatamente isso que eu não quero que aconteça. Mesmo que eu limpe completamente o .htaccess, ainda acabo reescrevendo.
— 4thSpace

@ Sunyatasattva, o código fonte diz "@param string $ recurso Capacidade ou nome da função". . Gostaria de saber quando isso foi adicionado ao Codex, ou por quem?
— s_ha_dum

@ 4thSpace Até onde eu entendi, você queria ter acesso total ao Wordpress sem que ele fosse ativado e redirecionasse os usuários que não têm permissão para uma página inicial personalizada que você chamou index.html. Quando eu disse "redirecionar para a página inicial", quis dizer redirecionar outros usuários para a página inicial, não você mesmo. Primeiro de tudo, para minha sugestão funcionar, você editou o 127.0.0.1 no seu IP público?
— Sunyatasattva

Sim - eu mudei meu IP público.
— 4thSpace

1

Tente isso.

function temp_page_redirect() {
    if (!current_user_can('administrator')) {
        wp_safe_redirect('temp.html',307);
    }
}
add_action('template_redirect','temp_page_redirect');

Não usei index.htmlporque, porque esse nome de arquivo tem um significado especial para o servidor. O '307' é um código de status que significa redirecionamento temporário. Eu assumi que a função 'administrador' precisa de acesso :)


1

Sinto que o método mais fácil de conseguir isso é editar o arquivo .htaccess no diretório raiz da web e colocá-lo no topo:

DirectoryIndex index.html index.php

Isso troca a ordem de prioridade na qual o Apache escolhe qual arquivo usar.


atende às minhas necessidades, onde eu quero adicionar páginas wp com o site html existente e a página de índice sendo html.
— Sajal

0

Isso funciona perfeitamente . Adicione uma nova pasta de plug-in com este arquivo como index.php.

No segmento de suporte:

"Para resolver a questão original, você pode desativar o redirecionamento canônico colocando isso no diretório de plugins -"

<?php
/*
Plugin Name: Disable Canonical URL Redirection
Description: Disables the "Canonical URL Redirect" features of WordPress 2.3 and above.
Version: 1.0
Author: Mark Jaquith
Author URI: http://markjaquith.com/
*/ 

remove_filter('template_redirect', 'redirect_canonical'); 

?>

Isso pareceu ajudar muitas pessoas lá, e pode ser uma resposta adequada aqui também.


1
O link solitário é considerado uma resposta ruim (consulte as Perguntas frequentes ), pois não faz sentido por si só e não é garantido que o recurso de destino esteja vivo no futuro. Tente incluir pelo menos um resumo das informações às quais você está vinculando.
— Rarst

1. Abra seu site com um programa FTP 2. navegue para / wp-content / plugins / 3. crie uma nova pasta com qualquer nome 4. crie um index.php e coloque o código PHP nos comentários acima (use tudo no código acima) e copie para a sua nova pasta 5. visite seu back-end do wordpress e ative esse novo plugin
— Andy

0

Tente isso no seu arquivo htaccess:

DirectoryIndex index.html index.php

Esse código significa que o apache procurará index.html primeiro e, se ele não existir, procurará index.php

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.