私は私のWordpressサイトのデザインと内容へのアップグレードをするつもりです。この間、私はホームページを公開したいだけです。 (プラグインなどを介して)これをロックするための良い方法はありますか。
私はGoogleからの回答を思いつくことができません。
ありがとう、ジェイソン
これは私が構築中の間に私が私のサイトに使用したコードの小さな断片です。
<?php
/* ROUGH METHOD OF DENY ACCESS */
$underconstruct = array(121, 46, 124, 97);
if(!is_user_logged_in() && !in_array(get_the_ID(), $underconstruct)) {
wp_redirect(get_permalink(121));
exit();
}
?>
これを私のheader.php
の一番上に置きます。
$ underconstruct配列は、ログインしていないすべてのユーザーに表示されるページ/投稿IDです。それらがログインしておらず、本来あるべきページの1つにもいない場合は、リダイレクトされます。ユーザーがログインしている場合は、すべて通常どおりに進行します。
WordPressは動的なWebアプリなので、他のすべてが更新されているときにホームページを利用できるようにするのは困難です。
プラグインまたはWordPressコアのアップデートを実行するたびに、メンテナンスモードが開始されます。これは「しばらく利用できません」ページを示しています。
上記の方法を使用しても、更新スクリプトの実行中に訪問者がサイトにアクセスしようとすると、訪問者は標準のメンテナンスページを見ることになります。
私が思うに最善の方法はあなた自身のmaintenance.phpファイルを作成することであり、これは静的ページよりも優れています。
.. NB私はメンテナンスページのスクリーングラブを表示しているだけなので、何が達成できるかについて少し考えてみてください。
あなたは私の maintenance.php の動作を見ることができます
メンテナンスモードWordPressをメンテナンスモードにするには、.maintenance
フォルダに/wordpress
という名前のファイルを作成します。
私はそれを見つけることができるように私はいつもaaaa.maintenance
として保存されています。
メンテナンスモード - ログイン中のユーザーは許可されています。
このステップにより、ログインしたユーザーはWP管理者にアクセスしてフロントエンドにアクセスすることができます。
aaaa.maintenance
を編集して、次のコードを挿入してください。
<?php
function is_user_logged_in() {
$loggedin = false;
foreach ( (array) $_COOKIE as $cookie => $value ) {
if ( stristr($cookie, 'wordpress_logged_in_') )
$loggedin = true;
}
return $loggedin;
}
if ( ! stristr($_SERVER['REQUEST_URI'], '/wp-admin') && ! stristr($_SERVER['REQUEST_URI'], '/wp-login.php') && ! is_user_logged_in() )
$upgrading = time();
?>
あなた自身のmaintenance.phpを作成してくださいwp-content
の下にmaintenance.php
という名前のファイルを作成します
ファイルを開き、次のコードを追加してください。
<?php
$protocol = $_SERVER["SERVER_PROTOCOL"];
if ( 'HTTP/1.1' != $protocol && 'HTTP/1.0' != $protocol )
$protocol = 'HTTP/1.0';
header( "$protocol 503 Service Unavailable", true, 503 );
header( 'Content-Type: text/html; charset=utf-8' );
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<!--- insert HTML here including hard coding your CSS -->
</body>
</html>
<?php die(); ?>
ファイルの下部に<?php die(); ?>
があることを確認してください。
だから今あなたはあなたがあなたが.maintenance
にaaaa.maintenanceの名前を変更するときはいつでも呼び出すことができるあなた自身の静的なページを持っています
ログインしていなくても/wp-admin
にアクセスできます。