WordPressで登録ユーザー限定コンテンツがあるときのフィードの本文

WordPressで「登録ユーザー限定コンテンツ」を実現するのは is_user_logged_in 関数を使えば割と簡単に実現できます。

例えば未登録ユーザーでもどんな内容のコンテンツがあるのかおおよそを把握できるよう、ホームでは投稿のタイトルのみを表示したり、フィードを購読できるようにしておく場合があります。

ホームについてはテンプレートファイルでいくらでも本文を表示しないようにできますが、フィードのテンプレートをカスタマイズしようとすると敷居が高くなってしまいます(方法がない訳ではありません※2012.6.12追記参照)。
ですが、フィードで本文が配信されてしまうとせっかくの「登録ユーザー限定コンテンツ」の意味がありませんので、本文そのものを変更してしまうスニペットを書いてしまいましょう。

続きを読む WordPressで登録ユーザー限定コンテンツがあるときのフィードの本文

WordPressで指定日時によって内容を表示するショートコード

WordPressをCMSとして運用していると、固定ページ(または投稿)内で本文の一部分のみを指定した日時で削除(表示)したい事があります。

例えば

  • 1/1から数日間は「明けましておめでとうございます」 を表示しておきたい。
  •  固定ページ内に貼ったバナー(画像やテキスト)は期間限定だらから期日がきたら削除したい

などなど。

普通はそのタイミングで投稿の内容を変更しますが、うっかり忘れたりしないように本文内で日時指定したいものです。

そこで今回は指定日時によって内容を表示するショートコードを作成します。

続きを読む WordPressで指定日時によって内容を表示するショートコード

カスタム投稿タイプと専用のユーザー権限(プラグイン編)

複数ユーザーでWordPressを運用する場合、ユーザーによって利用できるダッシュボードの機能を制限したいことがあります。
もちろん、WordPress標準の権限グループ(管理者、編集者、投稿者、寄稿者、購読者)で、事足りる場合もありますが、オリジナルのユーザー権限とカスタム投稿タイプ(+カスタムタクソノミー)を組み合わせることで、運用しやすいダッシュボードを作ることが可能です。
まずはプラグインのみで簡単に実現する方法を試しました。

※なお、今回はマルチサイトでの検証を行っていませんので、ご了承ください。 続きを読む カスタム投稿タイプと専用のユーザー権限(プラグイン編)

WordPressで作成者(投稿者)アーカイブを作らない方法(リライトルールの勉強)

WordPressをCMSとしてに利用する場合、作成者(投稿者)アーカイブが必要ないケースがあります。
基本的に作成者アーカイブは作成されてしまうので、これを「作成されない」方法をまとめておきます。(Twitterでのやりとりをまとめただけです) 続きを読む WordPressで作成者(投稿者)アーカイブを作らない方法(リライトルールの勉強)

WordPressと携帯とPHPのBasic認証(セーフモード版も)

WordPressにおいて、特定の投稿・カテゴリーなどを登録ユーザーのみに閲覧させたいという要望はよくあること。
通常であれば、header.php の初めあたりで is_user_logged_in や is_singular などの条件分岐タグと auth_redirect で特定の条件の場合はログイン画面に遷移するコードを書けばOKです。

<?php
// カスタム投稿タイプ member はログイン済みのユーザーのみ閲覧可能にする
if ( !is_user_logged_in() && is_singular('member') ) {
	auth_redirect();
}
?>

ところが、そこに携帯端末(フィーチャーフォン)も対応させようとして、少しはまりました。
続きを読む WordPressと携帯とPHPのBasic認証(セーフモード版も)

WordPressで投稿内に指定カテゴリーの記事を表示するショートコード

元ネタはフォーラム「showpostsで件数の指定ができません」
http://ja.forums.wordpress.org/topic/9573

ショートコード完成イメージ
ショートコード完成イメージ

そもそも、プラグインを使って投稿の編集内でPHPコードを書くよりも
ショートコードを作った方が良いってことで作ってみました。 続きを読む WordPressで投稿内に指定カテゴリーの記事を表示するショートコード