「カテゴリー」ウィジェット カスタマイズ

「カテゴリー」ウィジェットは、管理画面ではあまりカスタマイズできません。必要であれば、フックやプラグインを用いて表示設定などの変更を行うことができます。

目次

  • 「カテゴリー」ウィジェットの追加・設定
  • 特定のカテゴリーを除外
  • カテゴリーの順番を自由に並び替え
  • 各カテゴリーリンクへ「nofollow」を付与
  • サブカテゴリーをアコーディオン表示

「カテゴリー」ウィジェットの追加・設定

管理画面の「外観」「ウィジェット」とすすみ、表示させたいエリアに対して「カテゴリー」を追加(ドラッグ&ドロップ)

  • タイトル:ウィジェットのタイトルを設定
  • ドロップダウン表示:リスト形式ではなくドロップダウン形式で表示
  • 投稿数を表示:各カテゴリーの投稿数を表示
  • 階層を表示:親カテゴリーと子カテゴリーを階層で表示


category widget

特定のカテゴリーを除外する

子テーマのfunctions.phpに除外するカテゴリーのIDを指定します。

function exclude_widget_categories( $args){
    $exclude = '3,6,18';          // 除外するカテゴリーのIDをカンマ区切りで指定
    $args['exclude'] = $exclude;
    return $args;
}
add_filter( 'widget_categories_args', 'exclude_widget_categories');

少し古いですが以下のプラグインを使用して実現可能です。(カテゴリーのIDの確認は必要)
Category Excluder Widget

カテゴリーのIDの確認方法

  • URLから確認:管理画面の「投稿」→「カテゴリー」を開き、それぞれのカテゴリーのリンクURLのなかに「tag_ID=」に続く数字がカテゴリーのIDになります。
  • DBから確認:(wp_)termsテーブルの中身を確認。term_idがそのカテゴリーのIDになります。

カテゴリーの順番を自由に並び替える

カスタムメニューから作成ができます。

  1. 「外観」→「メニュー」からメニューを作成。左のカテゴリー欄からメニューに表示したいカテゴリーを追加(→メニューを保存)
  2. 表示させたいカテゴリーをドラッグアンドドロップで順番に並べます。(→メニューを保存)
    custom menu for category widget
  3. 「外観」→「ウィジェット」から"カスタムメニュー"を追加("メニューを選択"で作成したメニューの名前を選んで下さい。)
    custom menu widget for category

My Category Order (カテゴリーのIDの確認は必要)

カテゴリーリンクへ「nofollow」を付与

add_filter( 'wp_list_categories', 'my_wp_rel_nofollow');
function my_wp_rel_nofollow( $text ) {
//  This is a pre save filter, so text is already escaped.
    $text = stripslashes( $text);
    $text = preg_replace_callback( '|<a (.+?)>|i', 'wp_rel_nofollow_callback', $text);
//  $text = esc_sql( $text);
    return $text;
}
オリジナル /wp-includes/formatting.php
wp_rel_nofollow
wp_rel_nofollowを使用すると各リンクへnofollowを付与してくれますが、(\マーク)バックスラッシュが付いてしまうため少し改変しました。どうやら3.6で修正されるようです。 3.8でも修正されませんでしたので上記コードを使用する必要があります。ここは修正されないようですね。

サブカテゴリーをアコーディオン(ツリー)表示

jQuery Categories List Widget

標準のカテゴリーウィジェットでサブカテゴリの階層表示は可能ですが、このプラグインではアコーディオン表示が可能になります。ダウンロード

インストールして、管理画面の「外観」→「ウィジェット」とすすみ、表示させたいエリアに"jQuery Categories List Widget"を追加。

  • このエントリーをはてなブックマークに追加

関連記事

jQueryをCDNから読み込む

WordPressではデフォルトでjQueryライブラリが同梱されています。この記事では、それをやめて、CDNから読み込み、使用する方法を解説します。 WordPress 3.6 3.9 4.0

Twitterのツイートボタンの設置

Twitterのツイートボタンの設置はプラグインを使用しなくても容易に実装できるようです。 ソーシャルボタン設置のプラグインはこちらにいちおうまとめています。 Tweetボタンの設置コード 公式

投稿記事から「(ログイン)ユーザー名」がバレるのを防ぐ

ここ最近、アカウント乗っ取りやセキュリティ事故関連のニュースが相次いでいますが、WordPressで制作されたサイトも標的に会っているようです。一般的な手法としては「ブルートフォースアタック」という手

Twenty Fourteen "コメントをどうぞ"の非表示と変更方法

Twenty Fourteenでは、デフォルトで投稿ページと各アーカイブページの各投稿のメタ情報欄に「コメントをどうぞ」というコメントフォームへのリンクが設置されます。 それぞれ、コメントが0件の場

ログイン画面・機能をカスタマイズ

CSSを変更してスタイル変更 ログイン画面用のCSSを用意して子テーマとして使用します。変更したい部分だけを記述して下さい。 // オリジナル /wp-admin/css/login.min.

no image

ソーシャルボタン設置 プラグイン

各種メジャーなソーシャルメディアボタンを設置できるプラグイン WP Social Bookmarking Light 国産プラグイン。国産ゆえ、はてなボタンの設置も可能 ダウンロード Twe

条件を付けて訪問時に開くポップアップを実装できる「WordPress Popup」

「WordPress Popup」は、ユーザの訪問時にポップアップを開くように実装できるプラグインです。それぞれ条件によって開くかどうかを設定することができます。 ダウンロード / サンプル イン

no image

アイキャッチにマウスオーバーすると投稿タイトルを表示

WordPressのフォーラムから定期的に流入があるため、対応をいくつか探ってみました。トピックは、「サムネイルにマウスオーバーするとタイトルが表示されるようにしたい」 ちなみに、投稿内のキャプ

Twenty Twelve 投稿日・投稿者を非表示に

TwentyTwelveのちょっとした部分をカスタマイズする方法を紹介していきます。 また、子テーマで出力部分を変更する際に、翻訳が必要な部分//_()の部分がでてきますので、以下の投稿も参考に

テーマ ブックマーク 2013

2012 フリーテーマ トップ 20 Top 20 Free WordPress Themes of 2012 http://ow.ly/wMGjZ ハイクオリティフリーテーマ 3月 20 Top

Comment

ウィジェットで特定のカテゴリーを除外する | スナフキンの備忘録 へ返信する コメントをキャンセル

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

    PAGE TOP ↑