公開中のテーマを閲覧者にバレないようにカスタマイズする技

公開中のテーマをカスタマイズ

 公開中のテーマをカスタマイズするとなると、当然ながら完成するまでは中途半端な状態を閲覧者にさらしてしまうことになります。

 もしカスタマイズ途中の意味不明な状態をブログ訪問者に見られたら、「このブログ壊れとる。。」と思われること必至です。

 そんなことにならないように、完成するまでは閲覧者にバレないように、こっそりテーマをカスタマイズする事ができる小技をご紹介します。

is_user_logged_in関数を使う

 is_user_logged_in関数というのは、ログインしているかどうかをチェックしてくれる関数で、閲覧者がログインしているならtrueを、ログインしていなければfalseを返します。
 なのでif文の中で使うことで、以下のように分岐させることが出来ます。

<?php if(is_user_logged_in()){ ?>
   <p>あなたはログインしています</p>
<?php } ?>

 試しにあなたのテーマのテンプレートファイル内のどこかに上記のコードを貼り付けて見てみて下さい。
 ログインした状態でサイトにアクセスして貼り付けた部分を見ると、「あなたはログインしています」という文字が表示されていると思いますが、ログアウトしてからサイトを見ると、そこには何も表示されていないはずです。

 つまり、このif文の中に書いたコードは、ログイン中の自分には見えるけど、他の閲覧者には見えないわけです。

具体的な使い方

新しい要素を追加したい時

 例えば、このサイトのトップページにあるwhat’s newwhatsnew
↑これは新しい投稿記事から順番に表示するようにテンプレートファイル内にコードを書いています。
 ちなみにこんなやつです。↓

What's new!

<?php $args = array( 'nopaging' => true, 'post_type' => 'post', 'order' => 'DESC', 'orderby' => 'date' ); $the_query = new WP_Query($args); if($the_query -> have_posts()){ while($the_query -> have_posts()){ $the_query -> the_post(); ?>
<?php the_date(); ?>
<?php the_title(); ?>
<?php } } ?>
<?php $args = array( 'post_type' => 'page', 'name' => 'top' ); $the_query = new WP_Query($args); $the_query -> the_post(); ?>

 実はこのwhat’s newは、このサイトを公開してしばらくしてから、付け加えました。
 つまりこのトップページを公開した状態で、上記のコードを書き入れたわけですが、こんな長ったらしいphpを一発でしかもノーミスで書き上げる自信は僕はありません。

 現状では思い通りに表示させることはできていますが、このコードは、トライ&エラーを何度も繰り返した結果、書き上げたものです。

 さすがに、トップページのファーストビュー部分で醜いトライ&エラーの様子の一部始終を閲覧者様に晒すわけにいかないので、このコードを仕上げる際には、is_user_logged_in関数が役に立ちました。

 まず、新しく何か(ここで言うwhat’s new)を表示させたい場所に、is_user_logged_in関数で分岐させるphpタグを書いて、自分にしか見えない領域を作ります。

<?php if(is_user_logged_in()){ ?>
  自分にしか見えない領域
<?php } ?>

 この自分にしか見えない領域にコードを書いていきます。
 どんなにおかしなことになっても、自分にしか見えないので誰の目も気にすることなく思う存分トライ&エラーを繰り返すことが出来ます。どんなに悪戦苦闘していても閲覧者にはバレません。別に次の日に持ち越しても問題ないので焦る必要もありません。

 もちろん、cssも効かせて見た目を整えて、これなら見られてもOKという状態に仕上げてから、公開します。

テンプレートファイル全体を書き変える時

 全体ではなくても、テンプレートファイル内の大部分を大胆に書き変えたい時なんかは、既存のコードの上(前)に自分にしか見えない領域を作ってしまいます。
 そして、この自分にしか見えない領域に、既存のコードを全部コピペしてしまいます。

<?php get_header(); ?>
<?php if(is_user_logged_in()){ ?>
 
  既存のコード・・(コピペ)
 
<?php } ?>
 
既存のコード・・
 
<?php get_sidebar(); ?>
<?php get_footer(); ?>

 この状態で自分で(WPにログインした状態で)サイトを見ると、ページが二階建てになったような表示になるはずです。同じコードが二回繰り返されているからです。

 ただし全部コピペすると、他のテンプレートファイルにまたがってあるdivタグなんかは、ボタンの掛け違え状態になってしまい、大きくレイアウトが崩れてしまいます。

 しかし、もちろん閲覧者が見る限りでは一階建て(普通)です。レイアウトが崩れることもありません。
 二階部分は自分にしか見えないので、誰の目も気にせず、二階部分のコードをいじり倒すことができます。

 もちろん、コピペではなくゼロから書いていくこともできます。

完成させてからphpタグを消去

 カスタマイズが完成したら、自分にしか見えない部分を囲っていたphpタグと、古い部分(二階建ての一階部分)を消してしまえば、いきなり完成した状態を公開することが出来ます。閲覧者はいつの間にカスタマイズしたのかも分らないことでしょう。

 一つ注意ですが、phpタグを消す際はもちろん閉じタグ

<?php } ?>

も忘れずに消すようにしてください。

テーマのカスタマイズは落ち着いて

 公開中のテーマのカスタマイズは、変にテンプレートファイルを触ると思わぬトラブルに見舞われることがあります。ちょっとだけだから簡単に出来ると思っていても、触っているうちに取り返しのつかない状態になってしまう可能性もあります。
 落ち着いて作業するためにも、この自分にしか見えない領域を作る小技を絶対使うべきだと思います。

 使い慣れたらとても便利ですよ。

 あなたもis_user_logged_in関数を使いこなして、閲覧者にバレないようにこっそり、かつ大胆にブログをカスタマイズしてみてください!

  • Pocket
  • LINEで送る
  • このエントリーをはてなブックマークに追加

コメントを残す



CAPTCHA


関連記事

【最新情報 2017年】Amazonプライム会員が利用できる特典まとめ
noimage
AdSenseのクリック率(CTR)が、倍増した理由を大公開
noimage
【初心者向け】ブログでアフィリエイトを始める為に必要な情報一式
ブログ用Google+ページの作り方と、そのフォローボタンをフォロワー数と共に表示する方法
iPhone・iPad用、超個性的な本革ケース見つけた!
wp_is_mobile()でAdSenseの表示を制御する
サムネイル付きのリンクを簡単に貼る技(別ウィンドウで開くバージョン)
ブログでAndroidアプリを紹介する際、超便利なブックマークレット
noimage
あなたは解ける?!史上最高のひらめきクイズ!
noimage

Menu

HOME

TOP