Comment afficher une page HTML statique lors de la configuration d'un site WordPress?

8

Je viens d'installer Wordpress. J'ai une page de démarrage non Wordpress dans [dossier racine] /index.html. J'aimerais garder la page d'accueil pendant que je travaille sur le skinning de Wordpress. Lorsque j'essaie d'accéder à index.php (également dans le dossier racine), il réécrit l'url en index.html. Je ne vois pas index.html dans l'url mais la page de démarrage est là et je ne vois jamais Wordpress.

Je peux accéder à l'administrateur Wordpress sans problème. Quelqu'un sait-il comment accéder à Wordpress sans le mettre en ligne?

4thSpace
la source
3
Vous pouvez utiliser le plugin WordPress Under Construction .
Realloc

Réponses:

6

Utilisez un plugin (comme wp-maintenance-mode ) ou codez en dur votre fichier .htaccess pour rediriger vers la page de démarrage, et autorisez votre propre adresse IP (ou celle de votre équipe) à ignorer la redirection. Comme ça:

<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>

En ce qui concerne votre doute sur la raison pour laquelle index.html est servi à partir de la racine, c'est parce qu'il a généralement priorité sur index.php. Si vous voulez changer cela, vous devrez changer le DirectoryIndex.

EDIT: Je pensais que c'était évident, mais, pour plus de clarté: 127.0.0.1 devrait être changé en votre adresse IP publique. Notez également que 302 est une redirection temporaire, ce que nous voulons.

Sunyatasattva
la source
2
Comme je ne peux pas commenter les réponses des autres personnes, je voudrais simplement dire que j'aime vraiment la réponse @s_ha_dum, mais vous devez être prudent car le Codex Wordpress le dit clairement: ne passez pas de nom de rôle à current_user_can(), car cela n'est pas garanti fonctionner correctement.
Sunyatasattva
J'ai essayé votre suggestion et elle n'a pas d'effet. Je souhaite afficher index.html. Je souhaite également accéder manuellement à la page index.php de Wordpress. Mais cela provoque la redirection vers index.html. Je ne sais pas pourquoi vous dites "rediriger vers la page d'accueil". C'est exactement ce que je ne veux pas arriver. Même si j'efface complètement .htaccess, je me retrouve toujours avec des réécritures.
4thSpace
@Sunyatasattva, le code source dit "@param string $ capacity Capacité ou nom de rôle." . Je me demande quand cela a été ajouté au Codex, ou par qui?
s_ha_dum
@ 4thSpace Pour autant que j'ai compris, vous vouliez avoir un accès complet à Wordpress sans qu'il soit mis en ligne et rediriger les utilisateurs qui ne sont pas autorisés vers une page de démarrage personnalisée que vous avez appelée index.html. Quand j'ai dit "rediriger vers la page de démarrage", je voulais dire rediriger les autres utilisateurs vers la page de démarrage, pas vous-même. Tout d'abord, pour que ma suggestion fonctionne, avez-vous modifié le 127.0.0.1 sur votre IP publique?
Sunyatasattva
Oui - j'ai changé mon adresse IP publique.
4thSpace
1

Essaye ça.

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

Je ne l'ai pas utilisé index.htmlparce que ce nom de fichier a une signification particulière pour le serveur. Le '307' est un code d'état signifiant une redirection temporaire. J'ai supposé que le rôle «administrateur» avait besoin d'accès :)

s_ha_dum
la source
1

Je pense que la méthode la plus simple pour y parvenir est de modifier le fichier .htaccess dans le répertoire Web racine, et de le placer en haut:

DirectoryIndex index.html index.php

Cela permute l'ordre de priorité dans lequel Apache choisit le fichier à utiliser.

Jayden Lawson
la source
convient à mes besoins où je veux ajouter des pages wp avec le site html existant et la page d'index étant html.
Sajal
0

Cela fonctionne parfaitement . Ajoutez un nouveau dossier de plugin avec ce fichier en tant qu'index.php.

À partir du fil de support:

"Pour répondre à la question d'origine, vous pouvez désactiver la redirection canonique en la mettant dans votre répertoire 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'); 

?>

Cela semblait aider beaucoup de gens là-bas, et pourrait également être une bonne réponse ici.

4thSpace
la source
1
Un lien isolé est considéré comme une mauvaise réponse (voir FAQ ) car il n'a pas de sens en soi et la ressource cible n'est pas garantie d'être vivante à l'avenir. Veuillez essayer d'inclure au moins un résumé des informations vers lesquelles vous créez un lien.
Rarst
1. Ouvrez votre site avec un programme FTP 2. accédez à / wp-content / plugins / 3. créez un nouveau dossier de n'importe quel nom 4. créez un index.php et mettez le code PHP à partir des commentaires de code ci-dessus (utilisez tout dans le ci-dessus) et copiez-le dans votre nouveau dossier 5. visitez votre backend wordpress et activez ce nouveau plugin
Andy
0

Essayez ceci sur votre fichier htaccess:

DirectoryIndex index.html index.php

Ce code signifie qu'apache recherchera d'abord index.html, et s'il n'existe pas, il recherchera index.php

gtamborero
la source