WordPressの「カテゴリー」ウィジェットで特定のカテゴリを非表示にする方法

  • 公開日:2013/8/16
  • 最終更新日:2013/8/25
この記事は最終更新日から5年以上が経過しています。

WordPressでカテゴリー一覧をウィジェットの「カテゴリー」を使って表示しています。その一覧から特定のカテゴリー(例えば、Welcartで作られる商品とか)だけを非表示にする方法のメモです。


wp-includes/default-widgets.phpにある以下の記述をフックします。

$cat_args['title_li'] = '';
wp_list_categories(apply_filters('widget_categories_args', $cat_args));

※WordPressバージョン3.6

functions.phpに以下を記述して非表示にしたいカテゴリーを除外します。

/**
 * カテゴリ一覧ウィジェットから特定のカテゴリを除外
 *
 * @param 'widget_categories_args'(フィルタ名)
 * @param 'my_theme_catexcept'(呼び出す関数名※任意)
 * @param 10(優先度)
 * @param 1(関数に渡す引数の数※1なので省略可)
 */
add_filter('widget_categories_args', 'my_theme_catexcept',10);

function my_theme_catexcept($cat_args){
    $exclude_id = '7';     // 除外するカテゴリID
    $cat_args['exclude'] = $exclude_id;     // 除外
    return $cat_args;
}

カテゴリーのIDを調べるには、カテゴリー編集の画面で調べたいカテゴリ名をマウスオーバーするとURLの「tag_ID」の値で確認することができます。

category