情報科学屋さんを目指す人のメモ

方法・手順・解説を書き残すブログ。私と同じことを繰り返さずに済むように。

WordPressの最適化に!一般訪問者には見えない自分専用表示の作り方

HTML (16) PHP (25) WordPress (77) WordPressテーマ (7)

便利だからという理由で、自分のブログによく使うサイトのリンクを貼り付けたり、アクセスカウンタを設置したりしていませんか?本来なら、それは自分が見るときだけ表示されればいいものです。というよりむしろ、他人にとってはジャマなコンテンツになっている可能性や、表示を遅くする原因になっている可能性すらあります。そこで今回は、自分にだけ表示される領域を作成する方法を紹介します。

アイディア次第でいろいろ便利にできるのではないかと思います。

「自分だけ」とはどういうこと?

ここで言う「自分」とは、「WordPressにログインしているブラウザからのアクセス」ということです。ログアウトしたり、ログインしていないブラウザからなら、一般訪問者と同じ表示を確認できます。

is_user_logged_in()を使う

ここで使うのは、「is_user_logged_in()」という関数です。まさしく、「自分がログイン中かどうか」を確認する関数です。

自分だけに表示する領域を作成する方法

たとえば、「総コメント数」の表示を自分専用にしたいとします。

これは、テーマファイルの次の記述で表示されています。

<li class="widget">
	<h2>総コメント数</h2>
	<p style="text-align:center;">
		<span>全</span><span style="font-weight: bold; color: #F7B525; font-size: 30px; ">&nbsp;<?php
			$numcomments = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = '1'");
			if (0 < $numcomments)
			$numposts = number_format($comments);
			echo $numcomments;
			?>&nbsp;</span><span>コメント</span>
	</p>
</li>

この最初と最後に「<?php if ( is_user_logged_in() ) : ?>」と「<?php endif; ?>」を追加するだけで自分専用表示を実現できます。

<?php if ( is_user_logged_in() ) : ?>
<li class="widget">
	<h2>総コメント数</h2>
	<p style="text-align:center;">
		<span>全</span><span style="font-weight: bold; color: #F7B525; font-size: 30px; ">&nbsp;<?php
			$numcomments = $wpdb->get_var("SELECT COUNT(*) FROM $wpdb->comments WHERE comment_approved = '1'");
			if (0 < $numcomments)
			$numposts = number_format($comments);
			echo $numcomments;
			?>&nbsp;</span><span>コメント</span>
	</p>
</li>
<?php endif; ?>

これだけで、自分以外のユーザから、先ほどの「総コメント数」が見えなくなります。簡単です。

まとめ

今回は、「自分だけのために表示したい」場合にどうすればいいかを解説しました。これを上手に使って、余分な表示を減らしつつも、自分にとっては便利なブログ、というのを作ってみてはいかかでしょうか。是非試してみてください。

ただし、「一般訪問者と違う見え方をするんだ」という点に注意して利用するのを忘れずに。

コメント(0)

新しいコメントを投稿