今回は、WordPressのカテゴリー名を非表示にする方法をご案内します。お客さんから聞かれたのでいくつか対応したんだけどどこのカテゴリーを非表示にするかでやり方も変わってきます。

例えば、投稿のカテゴリー部分なのかそれともカテゴリー(アーカイブ)ページ自体を非表示にしたいのか?などです。私もこの記事を書く上で整理してみたいと思いますのでよろしくお願いします。それでは早速始めましょう。

CSSを使った非表示(削除)方法

私のブログだとこの部分です。

この部分を非表示にするには、CSSを扱うのが手っ取り早いです。ただ、テーマによってはCSSの定義が変わってくるので注意しましょう。

bizvectorの場合

投稿内のカテゴリー部分だけを非表示にする

※変更前:

※変更後:

設定方法は、「外観」ー「CSSカスタマイズ」より以下のCSSを追加してください。

追加後:

.tags.entry-meta-items {
display: none;
}

行全体を非表示にする

「外観」ー「CSSカスタマイズ」より以下のCSSを追加してください。

追加後:
.entry-meta {
display: none;
}

プラグインを使った非表示(削除)方法

おそらく一番簡単な方法は、プラグインを使う方法でしょう。CSSの場合は、なんと言ってもコードを修正しないといけませんから初心者の方にはかなりのハードルとなりますからね。次のようなプラグインがあるようです。

No Category Base (WPML)

WordPressではカテゴリーが作られると同時にアーカイブページも作成されます。そして、そのアーカイブページのパーマリンク(URL)に「category」が付きます。

例えば、この投稿では、

https://www.wordpress-123.com/wordpress%e3%81%ae%e3%82%ab%e3%83%86%e3%82%b4%e3%83%aa%e3%83%bc%e5%90%8d%e3%82%92%e9%9d%9e%e8%a1%a8%e7%a4%ba%e3%81%ab%e3%81%99%e3%82%8b%e6%96%b9%e6%b3%95/

が投稿時のURLです。

そして、アーカイブページのパーマリンク(URL)は、

https://www.wordpress-123.com/category/wordpress%e3%81%ae%e3%82%ab%e3%83%86%e3%82%b4%e3%83%aa%e3%83%bc%e5%90%8d%e3%82%92%e9%9d%9e%e8%a1%a8%e7%a4%ba%e3%81%ab%e3%81%99%e3%82%8b%e6%96%b9%e6%b3%95/

このプラグイン「No Category Base (WPML)」では、このパーマリンク部分の 「category」 部分を消すことが可能です。設定方法は特になく、プラグインをインスールするだけみたいです。

変更前:
例)http://example.com/category/カテゴリー名/

変更後:
例)http://example.com/カテゴリー名/

ただし、私もこれを設定したところドツボにはまりました。何故かと言うと私は記事の投稿名をパーマリンク(URL)にしています。カテゴリーもSEOを意識して記事の投稿名と同じにしています。そのケースだと記事自体まで非表示になってしまうのです。

投稿名とカテゴリー名を同じにしているので…

変更前:
例)http://example.com/category/投稿名/

変更後:
例)http://example.com/投稿名/
(この状態だと記事が見えなくなります。)

たぶん、カテゴリーと投稿名を同じにしなければこんな事象は発生しないのでしょうけど今のところそうするつもりがありません。そのため、このプラグインを使うことは止めました。

私と同じ悲しい現象の方は、プラグインを停止後、削除しても状況は変わらないはずです。そんなときには、「設定」ー「パーマリンク設定」から何も変更せずに、「変更を保存」ボタンを押して更新してください。きっと元に戻るはずです。内部的には、「.htaccess」を修正しているんでしょうね。

Yoast SEO

Yoast SEO でカテゴリーを非表示にできると言われたブログもあったのですが、私が調べた限りできませんでした。「タクソノミー」タブに「Show カテゴリー in search results?」という項目がありますが、これはあくまでも検索結果(ディスクリプション)のことです。たぶん、要求していることとは違うと思います。

ただし、著者ページのアーカイブは非表示(削除)することができました。他にも日付別のアーカイブページをは非表示(削除)できるようですので必要に応じて設定してみてくださいね。

パーマリンク設定を使った非表示(削除)方法

「設定」ー「パーマリンク設定」から設定する方法もあります。オプションのカテゴリーベースへ「.」を入力するのです。そうすると次のようになります。

設定はこちらですね。

変更前:
例)http://example.com/category/投稿名/

変更後:
例)http://example.com/投稿名/

ただ、欠点もあるようです。サブカテゴリーを含むページを表示したとき、404エラーになってしまうようです。(投稿名に /%postname%/ を設定していることも関係しているでしょう)

また、ソースコードをよく見ると消えていないことが分かります。URLの途中に(/./)がありますよね?これはちょっと問題が大きいです。

https://www.wordpress-123.com/./wordpress%e3%81%ae%e3%82%ab%e3%83%86%e3%82%b4%e3%83%aa%e3%83%bc%e5%90%8d%e3%82%92%e9%9d%9e%e8%a1%a8%e7%a4%ba%e3%81%ab%e3%81%99%e3%82%8b%e6%96%b9%e6%b3%95/

上記だと分かりにくいかもしれないのでソースコードも画面キャプチャしました。(クリックすると画像が大きくなるよ。)

この方法だと運営年数が経過しているようなサイトだと記事が大量にあるでしょうから、グーグルやヤフーへインデックス登録さていることでしょう。そんなサイトでは301リダイレクトをしないと収益がずいぶんと減るでしょうからお薦めできませんね。

立ち上げたばかりのサイトだと良いと思います。

functions.phpへ修正を加える方法

・鋭意作成中

お問い合わせはこちらからどうぞ!

住所:埼玉県川口市江戸袋1-17-41
名称:アイデアマート
担当:茂田 道輝

アクセス(お越しの際は不在のときがあるので事前に必ずお電話ください。):

電話でのお問い合わせ

090-1852-8189

メールでのお問い合わせ

お名前 (必須)
メールアドレス (必須)
電話番号 (必須)
URL (必須)
お問い合わせ内容 (必須)

確認画面は表示されません。上記内容にて送信しますがよろしいですか? (必須)
はい

この記事を書いた人

茂田 道輝
茂田 道輝
在宅で仕事していますので、ご連絡いただいたら早めの返信をお約束できると思います。(原則24時間以内の返信を目指しています)しかも、状況によっては即日対応できるかもしれません!!

WordPressを使ったホームページ作成の個人指導の出張も行いますのでお気軽にご相談くださいね。(相談無料)電話番号は、090-1852-8189 です。