ウィジェットを作りたい場合、プラグインの”WordPress Popular Posts””Newpost Catch””Custom Sidebars””Display Widgets”などが有名です。 でも、プラグインなしで2ステップで簡単に出来るので紹介します。
自作ウィジェットの作り方
カスタムのウィジェットを登録する(function.php)
※function.phpはコードを間違えると真っ白になります(経験談)ので、バックアップしておきましょう。 function.php
/**
* カスタムでウィジェットを登録
*/
function custom-sidebar_widgets() {
//”custom-sidebar”は任意
register_sidebar(array(
'id' => 'my-sidebar',//ID
'name' => 'ウィジェットページでの表示テキスト',//日本語でOK
'description' => '説明文',//ウィジェットページで表示されます。日本語でOK
'before_widget' => '<aside id="%1$s" class="widget %2$s">',//ウィジェットの内容が入ります
'after_widget' => '</aside>',
'before_title' => '<h4 class="widget-title">',//ウィジェットのタイトルが入ります
'after_title' => '</h4>',
));
}
add_action( 'widgets_init', 'custom-sidebar' );//”custom-sidebar”の部分は名前を合わせる
サイドバーに表示させる(sidebar.php)
サイドバーにウィジェットを表示させるので、sidebar.phpに以下を追加します。
sidebar.php
<?php if (is_post_type_archive( 'アーカイブ名' ) || is_single( '投稿ページのスラッグ名' )) : ?>
<aside class="widget">
<?php dynamic_sidebar('my-sidebar'); ?>
</aside>
<?php endif; ?>
カスタム投稿のアーカイブ名の場合or投稿ページのスラッグ名の場合、 サイドバーに”my-sidebar”を表示させるという意味です。
条件分岐の書き方
複数条件を書きたい場合
または(OR)の場合は ”||”
かつ(AND)の場合 ”&&”
でつなげます。
かつ(AND)の場合 ”&&”
でつなげます。
アーカイブを表示する場合
条件指定は各項目によって違います。 アーカイブページ(記事一覧ページ)を表示する場合
is_archive()
カスタム投稿タイプの場合のアーカイブを表示する場合
is_post_type_archive()
その他基本的な条件指定
トップページのみ表示させる
is_front_page() && !is_paged()
is_paged()は複数ページの2ページ目以降、”!”は否定(以外)という意味。
投稿ページのみに表示させる
is_single()
以上、ご参考になれば幸いです。
コメント