指定した記事を単独で表示するサイドバーウィジェット

午前0時を過ぎたので昨日になりますが、神戸のWordBenchに参加しました。

みなさん、お疲れさまでした。

ところで、そのなかで、トップページの下の方に今後のイベントを表示したいとか、ウィジェットでやったらいいとか、そんなやりとりがありました。

実は、その解決に役立ちそうなのをすでに持っていたので、公開しておきます。

このプラグインは、URLを指定すると、その記事の投稿サムネールやタイトル、記事などを単独で表示するプラグインです。

使い道

このプラグインは単に指定された投稿またはページを単独で表示するだけです。

しかし、投稿サムネールがあればそのimgタグも出力できますので、たとえばサイドバーウィジェット上でキャンペーンなどの告知用バナーなどが、超簡単に作成できます。

HTML部分はテンプレート化していますので、様々なシーンで利用可能な優れものです。

導入手順

テーマファイル内の functions.php に以下の記述を追加してください。

register_sidebar( array(
    'name' => 'Home Widget Area',
    'id' => 'home-widget-area',
    'description' => 'The HOME widget area',
    'before_widget' => '<div id="%1$s" class="home-widget-container %2$s">',
    'after_widget' => '</div><div class="clearfix">&nbsp;</div>',
    'before_title' => '<h2 class="widget-title">',
    'after_title' => '</h2>',
));

続いて、テーマファイル内のindex.phpのhave_posts()ループの直下あたりに、以下の記述を追加してください。

dynamic_sidebar('home-widget-area');

ここまでの処理でトップページに新しいウィジェットエリアが追加されました。

あとは、本プラグインを以下からダウンロードして、インストールして下さい。

singlepost-widget

次にウィジェットの設定画面で、このウィジェットを有効化してテンプレートをゴニョゴニョすれば完成です。

イベントが完了したら、ワンタッチで削除できますので幸せですよ。

詳しい仕様

  • 投稿のIDまたはURLからその投稿に関する情報を取得します。URLが指定された場合は内部でIDに変換して、そのIDからget_post()してます。
  • サムネールのサイズはそのテーマで使用可能なサイズが自動的にプルダウンに出ます。
  • テンプレートはコンテンツ出力部分のテンプレートを指定できます。テンプレート内では、以下のような専用タグが使用できます。
    • %post_thumb% – 投稿サムネールのimgタグ
    • %class% – CSS用のクラス属性
    • %post_title% – 投稿のタイトル
    • %post_excerpt% – 投稿の抜粋
    • その他,
    • WordPressのget_post()関数を%で囲んだもの。

意味分かりにくいですかね?

でも、これは、解決策のひとつとしてとてもオススメであることは間違いありません。

わからないことがあれば、twitterで質問してくださいませ。