カテゴリ別のメニューを記事内にサムネイル付きで作成できる【List category posts】

sponsored link

ユーザ用のサイトマップを作成してくれるプラグイン【PS Auto Sitemap】を利用して一応のコンテンツメニューは作成することはできますが、【List category posts】は記事一覧を作成する専用のプラグインです。

これを利用すれば、カテゴリやタグごとに分けたメニューページなどを作成することができます。

ナビとしても使えるし、関連記事や人気記事のようにユーザに興味を持った記事にアクセスしてもらう用途としても、工夫次第で様々な使い方ができると思います。

PS Auto Sitemapについては以下を参照
記事の全件表示メニューとして使える、ユーザ用のサイトマップを自動で作成してくれるプラグイン【PS Auto Sitemap】

特長

  • カテゴリやタグなど、様々な条件で抽出したメニューを設置可能
  • 複数のページでいくらでも作成可能
  • 日付表示など、引数の指定で様々な表示のカスタマイズが可能
  • テンプレートシステムを使い、状況に合わせた様々なスタイルを作成可能
  • サムネイル付き表示もできる

「PS Auto Sitemap」の場合、元々サイトマップを作成することを目的としているためか1ページ分しか作成できず、設定もそれほど細かなことはできません。

「List category posts」は記事一覧を作成することを目的としているので、より詳細なカスタマイズが可能です。

インストールと使い方

WordPressの管理画面から、「プラグイン」>「新規追加」>「検索」で【List category posts】検索してプラグインをインストールします。

管理画面>「設定」に「List category posts」の項目が追加されていますが、これは表示件数のデフォルト値を設定するだけで、使用は記事内に専用のショートコードを書きます。

詳細設定

list_category_posts_setting

設定画面ではデフォルトの記事表示件数を設定できます。「-1」が全件表示、「0~」で1ページ内に表示する件数を指定します。

デフォルト値ですので、ショートコード内で個々の設定を上書きできます。

使い方

以下のショートコードを使い、そのパラメータで表示内容を指定します。

[catlist]

基本的なパラメータ

項目 説明
id カテゴリIDで抽出条件を指定 catlist id=24
name カテゴリ名(スラッグ)で抽出条件を指定 catlist name=”カテゴリー名(スラグ)”
tag タグで抽出条件を指定 catlist tag=”タグ名”
exclude_tags 除外タグの指定 exclude_tags=”除外タグ名”
categorypage 現在と同一カテゴリの記事を表示(?) categorypage=”yes”
search 任意の検索結果を表示 search=”検索キーワード”
orderby 並び替えをする項目 orderby=title
order 昇順・降順 order=asc
numberposts 表示する記事数 numberposts=10
pagination ページ送り pagination=yes
date 記事の日付を表示 date=yes
excerpt 記事の抜粋を表示 excerpt=yes
excerpt_size 抜粋する文の量を指定(行数?) excerpt_size=5
thumbnail 記事のサムネイルを表示 thumbnail=yes
thumbnail_size 記事のサムネイルサイズを指定 thumbnail_size=50,50
template 使用するオリジナルのテンプレートを指定 template=templatename

記事IDなどの指定はアンド条件「+」オア条件「,」除外「-」で複数指定できます。
[catlist id=17,24,32]
[catlist id=17+24,-32]

「yes」で指定するような項目は、基本的には「no」がデフォルトとなっているため、必要な時に指定するだけで大丈夫です。

必要最低限しか試していませんが、他にも非常に多くのパラメータがあります。

詳細は公式ページを参照してください。(英語です)
表示方法
詳細設定

設置例

[catlist name=plugin search="サイドバー" numberposts=3 excludeposts=this thumbnail=yes thumbnail_size=70,70 template=list]

「プラグイン」カテゴリの中から、「サイドバー」の語を含む記事を、この記事を除いて3件表示してみました。並び方はデフォルトの日付の降順です。

テンプレートシステム

「List category posts」はデフォルトの場合タイトルや日付、サムネイルの位置は固定です。また、タイトル名の表示を削除してサムネイルだけにしたりとかもできません。

そこで、「テンプレートシステム」を使いオリジナルのPHPファイルを作成することでカスタマイズできるようになっています。

複数作れるので、「このページのリストはこうした表示で─」というように、任意のテンプレートを指定することで状況に応じた表示が可能になります。

使い方

1.「wp-content/plugins/list-category-posts/templates」の中にある【default.php】を自端末へコピペします。これが元になるファイルで、リネームして使いまわします。

2.WPで使用しているテーマのフォルダ内「wp-content/themes/your-theme」に「list-category-posts」というフォルダを作ります。(子テーマの場合は子テーマのフォルダの下)

3.ファイルの修正を行います。

4.作成した「list-category-posts」フォルダにリネームした「default.php」をアップします。

具体例

例えば、デフォルトだとサムネイルは一番右に表示されますが、これを一番左に表示させます。


  //Show the title and link to the post:
  $lcp_display_output .= $this->get_post_title($single);

  //Show comments:
  $lcp_display_output .= $this->get_comments($single);

  //Show date:
  $lcp_display_output .= ' ' . $this->get_date($single);

  //Show author
  $lcp_display_output .= $this->get_author($single);

  //Custom fields:
  $lcp_display_output .= $this->get_custom_fields($this->params['customfield_display'], $single->ID);

  //Post Thumbnail
  $lcp_display_output .= $this->get_thumbnail($single);

上記の箇所がタイトルや日付、サムネイルなどを出力しているコード。この順番に表示されています。


//Post Thumbnail
$lcp_display_output .= $this->get_thumbnail($single);

//Show the title and link to the post:
$lcp_display_output .= $this->get_post_title($single);

一番下にある「//Post Thumbnail」のコードを「Show the title and link to the post」の上に持ってきます。

これで、サムネイルがタイトルの前に表示されるようになります。

サムネイル表示だけにしたい場合はタイトルの部分をコメントアウトするか削除します。

あとは、ショートコードで使用するテンプレートのファイル名を指定すればそのテンプレートが適用されます。

[catlist id=1 template=templatename]

あとがき

ワードプレスは企業サイトなどにもよく使われていますが、元々「ブログツール」として発展して来たためか、ユーザメニューを作る発想があまりないようです。

大抵の企業サイトの場合、コンテンツ量からか、ページ上にグローバルナビゲーションを作りサイトマップを作成するだけのような設計です。

「ブログじゃないWebサイトをの作り方」などの解説も多くありますが、「普通のWebサイト」(コーポレートサイトじゃなくて)の作り方を言及した解説は意外と見かけない。

ブログタイプのサイトなんかだと、カテゴリページへのリンクをページ上に作り、トップページのような抜粋記事の一覧を見せているところが多い。

ただ、これだとちょっと見難い。ユーザがページ送りをして興味のある記事を全部見てくれるかと言うと、恐らくほとんどが直帰かパラパラと数ページ送るだけ。

そうじゃなくて、サイトの全体像がわかりやすいコンテンツページを作成したWebサイト風に仕上げたいと思っても、コンテンツのナビを作るようなプラグインが見つからない。仕方なく手動でやってたりするところも多いですが、それだと手間もかかるしリンクミスによる間違いも起こる。

なんでこんな基本的なものがないんだと思うが、やっぱりワードプレスとはそういうものなのか、と諦めて代替にサイトマップを作成したりもしていました。しかし…やっとお目当てのプラグインを見つけました。

需要はあまりないのか、それほど有名ではないですがなかなか優れもののプラグインです。

sponsored link

コメントを残す

メールアドレスが公開されることはありません。