2018/07/15 改訂版 「『あなたの悩み、分かるわ』詐欺に気を付けろ」「周りの人をカウンセラーにしない」「人生なんて相談しても仕方がないことが多い」

Twitter風の短文投稿を1ページにまとめて連続表示する方法 WordPress編

Twitter風の短文投稿を1ページにまとめて連続表示する方法 WordPress編

Twitter風の短文投稿(数行の雑感や覚え書き)を一つの記事にまとめて、SEO的にもジャンクと見なされないように表示したいと思ったことはありませんか?

Googleの審査も厳しくなり、Twitterのような数行の投稿を100も200もアップしていたら、中身のないスパムサイトと見なされて、ランクを下げられる……というのは有名な話です。どの程度ランクを下げられるのかは分かりませんが、ほとんど記述のないページが多ければ多いほど、評価が下がるのは本当でしょう。

訪問者にとっても、タイトルをクリックしてみれば2~3行しか書いておらず、広告ばかりが目立つとなれば、非常に不愉快ですし、他にどんな優良記事があっても「二度と来ねえよ」となってしまいます。

短文投稿したければ、Twitterを開設して、投稿内にウィジェットを埋め込めば可能ですが、あれもまた連続して埋め込んであると読みにくいし、一つのページ内にアイコンやらなんやら表示されて、いいことが書いてあっても読む気を無くすことがありますね。またTwitter自体が苦手な方も少なくないでしょう。

おそらく、WordPress民にとって一番やりたいのは、気軽に短文を投稿し、なおかつサイト評価も下げない、訪問者にも苦痛を与えない方法ではないでしょうか。

そこでお薦めしたいのが、post content だけを連続して表示する方法。当サイトでは、こんな感じで、短文投稿を一つのページにまとめています。h2タグで区切ったように見えますが、一つ一つがIDの異なる短文投稿で、title と content とメタ情報だけ抽出して、連続表示しています。これなら、3行ぐらいの短文投稿でも、見た目には一つの記事として表示することができます。

検索エンジンを回避して、ディレクトリごとbotを拒否したり、個々に no index を設定することも可能です。

カスタムポストとある種のプラグインを組み合わせるだけで簡単に実装できますので、興味のある方はぜひトライして下さい。

たとえば、このような短文投稿が三つあります。

短文投稿 カスタムポストタイプ

後述の、Display Posts Shortcode もしくは WP Show Posts を使えば、こんな感じで1ページにまとめる事ができます。

WP Show Posts

Twitter風の短文投稿+連続表示の手順

前準備

1) カスタムポストを作成する
通常の投稿でも差し支えなければ、別に作成する必要はありません。
が、短文投稿が100、200と増えてくると、肝心のメインコンテンツの整理がぐちゃぐちゃになるので、カスタムポストにまとめた方が無難です

2) プラグインを導入する

post content だけを描出するプラグインは複数あります。プラグインによっては、グリッド表示、スライダー表示など、凝った見せ方もできますので、いろいろ試して下さい。

3) robots.txt を設定する

短文投稿のディレクトリはrobots.txtでまとめてブロックした方が効果的ですが、中には、検索エンジンにのせたい記事もあるでしょうし、個別に振り分けたい場合は no index を利用しましょう。

短文投稿用のカスタムポストの作成

まず短文投稿ようのカスタムポストを作成します。functions.phpに記入する方法もありますが、個人的にはCustom Post Type UIをお薦めします。でないと、アーカイブ表示が上手くできないことがあるからです。検索エンジンの拒否やタクソノミ―管理も一括でできますので、複数作成する場合は必須です。

当サイトでは、短文専用のカスタムポスト「Notes」と、そのコンテンツを連続表示する「Notes of Life」と、二種類作成しています。

短文投稿はカスタムポスト、連続表示するページは専用カテゴリーを設けて、通常投稿で、ということも可能です。そのあたりはご自身の環境に合わせて計画を立てましょう。

また、必要に応じて、タクソノミ―も組み込むと分類に便利です。

短文投稿 カスタムポストタイプ

プラグインの種類

post content だけを抽出して、連続表示するプラグインは幾つかありますが、一番使い勝手がいいのは、次の二つです。

Display Posts Shortcode

有名な記事リスト系プラグインです。通常は、タイトルと抜粋とアイキャッチ画像だけ抜き出して、新着記事や、特定カテゴリーのおすすめ記事のポストリストとして活用している人が多いのではないでしょうか。
これは抜粋だけでなく、コンテンツ全文を抽出することもできます。
表示する期間の指定、タグやタクソノミによる記事の振り分け、並び替え、WP_Query の機能はほとんど使えます。

デメリット 「タームの一覧表示ができない(タームによる記事の振り分けはできる」「ページネーション不可」

こちらも参考にどうぞ。
Display Posts Shortcode でTwitter風の短文投稿を1ページにまとめて表示

WP Show Posts

これはDisplay Posts Shortcodeの機能をビジュアル化した感じです。
ターム名の一覧表示も可能で、カスタムフィールドを使えば、自動的に投稿のグループ化ができます。

短文投稿 カスタムポストタイプ

短文投稿 カスタムポストタイプ

WP Blog and Widget

比較的新しいプラグインで、文字通り、WordPressの中に blog in blog ができます。
これは自動的にカスタムポストタイプと専属のカテゴリーを作成してくれるので、小技は必要ありません。

短文投稿 カスタムポストタイプ

使えるパラメータも豊富で、機能的にはDisplay Posts Shortcodeと遜色ありません。無料版でもサムネイル付きのグリッド表示ができるので、手軽に記事一覧を作成したい方におすすめです。もちろん、本文だけ抜粋して、連続表示することも可能です。

短文投稿 カスタムポストタイプ

ただ、お使いの環境によってはページネーションが上手く機能しないのと、日時でグループ化(1月1日~1月7日までの記事、など)できないので、無料版の場合、用途は限られます。もう少し機能が欲しければ、Pro版にバージョンアップが必要です。

短文投稿 カスタムポストタイプ

Content Views – Post Grid & List for WordPress

これは非常に高機能かつ直感的で、やりたい事は完璧にやってくれるプラグインですが、無料版の場合、カスタムポストやタクソノミ―が使えないのがネックです。
ビジネスサイト向きですね。1サイト=39ドルなので、そのあたりはご自身の判断で。

短文投稿 カスタムポストタイプ

Display Posts Shortcodeを使う

これが一番安上がりで、軽量です。

プラグインを有効化したら、下記のようなパラメータを指定するだけ。
パラメータの種類はこちらに詳しく記載されています。
//github.com/billerickson/display-posts-shortcode/blob/master/README.md#parameters

たとえば、カスタムポストタイプ『news』、1月1日以降~1月10日までの記事の本文+タイトルを連続表示する場合。
コンテンツ部分のスタイルは、dps-listing-content で調整できます。

  • 投稿が見つかりません。

さらに細かなカスタマイズが必要な場合は、こちらを参照します。
//www.billerickson.net/code-tag/display-posts-shortcode/

たとえば、記事のタイトルをh2にしたい場合。
//www.billerickson.net/code/dps-use-h2-post-title/

function be_dps_post_title_h2( $output, $original_atts, $image, $title ) {
    if( !empty( $original_atts[ 'post_title_as_h2' ] ) && true === filter_var( $original_atts[ 'post_title_as_h2' ], FILTER_VALIDATE_BOOLEAN ) ) {
        $new_title = '<h2>' . $title . '</h2>';
        $output = str_replace( $title, $new_title, $output );
    }
    return $output;
}
add_filter( 'display_posts_shortcode_output', 'be_dps_post_title_h2', 10, 4 );

デフォルトで挿入されるタイトルのリンクを無効にする場合。
//www.billerickson.net/code/remove-link-title-display-posts-shortcode/

function be_display_posts_unlink_title( $output, $original_atts, $image, $title, $date, $excerpt, $inner_wrapper, $content, $class ) {
 
    // Create a new title
    $title = '<span class="title">' . get_the_title() . '</span> ';
   
    // Now let's rebuild the output
    $output = '<' . $inner_wrapper . ' class="' . implode( ' ', $class ) . '">' . $image . $title . $date . $author . $excerpt . $content . '</' . $inner_wrapper . '>';
 
    // Finally we'll return the modified output
    return $output;
}
add_filter( 'display_posts_shortcode_output', 'be_display_posts_unlink_title', 10, 9 );

他にもいろんなパラメントがあるので、組み合わせて使えば、かなり思い通りの表示ができると思います。

次に、これらのショートコードをリスト表示用の投稿に挿入して、公開します。
タイトルは「一月の雑感」とか、日付でグループ化してもいいし、映画、音楽など、タクソノミ―でジャンルわけして、話題を統一してもOK。
3行の短文投稿 ✕ 10本でも、一つの記事のように連続表示されます。

後は、robots.txt を使ってディレクトリごとボット巡回を拒否するか、、Noindex PagesのようなSEO対策のプラグインを使って、個別に index / no index をコントロールすればOK。(後述)

さらにfunctions.phpに追加のコードを記入すれば、RSSやトップページに取り入れることができます。(後述)

惜しむらくは、「ページネーションができない」「ターム一覧を描出できない」。後者に関しては、functions.phpをいじれば出来そうな感じですが、そのあたりは各自でカスタマイズして下さい。

WP Show Posts

こちらは操作画面がビジュアルで見やすく、タームも表示してくれます。
ただ、Display Posts Shortcode のように、ショートコードだけで動作せず、前述のように、WP Show Posts という項目を新たに作成する為、整理が少々、厄介です。
それでもグリッド表示、カスタムフィールドを含めた分類など、細かなカスタマイズが可能なので、WordPress初心者には便利です。

このプラグインは、Display Posts Shortcodeのように日付指定のパラメーターがないので、短文投稿を日時でグループ化する場合は、カスタムフィールド値を使う必要があります。
たとえば、週ごとにまとめる場合、『week』というメタキーを作成し、一週目、二週目という意味で、数字を入れていけば、メタ値『1』に属する投稿だけをグループ化して、一覧表示してくれます。
短文投稿 カスタムポストタイプ

本文だけ、抜粋だけ、といったカスタマイズも可能ですし、アイキャッチ画像も操作画面で指定できます。
CSSをいじるのが苦手な人には便利です。

こちらはプラグインが創出したショートコード、もしくはテンプレート・タグを表示したい場所に挿入します。
メインコンテンツの記事数が少なければ、専用のカテゴリーを設けて、通常投稿を利用する方が整理しやすいかもしれませんね。

短文投稿 カスタムポストタイプ

短文投稿 カスタムポストタイプ

RSSや新着記事に含める

カスタムポストに短文投稿の一覧を表示する場合、デフォルトの状態ではRSSや新着記事に反映されませんので、functions.phpに以下のコードを追加します。
通常投稿に加え、カスタムポスト『news』『movie』をRSSに表示する場合。

//RSS
function mysite_feed_request($vars) {
    if ( isset( $vars['feed'] ) && !isset( $vars['post_type'] ) ) {
        $vars['post_type'] = array(
        'post',
        'news',
        'movie'
        );
    }
    return $vars;
}
add_filter( 'request', 'mysite_feed_request' );

トップページの新着記事に含める場合。

//新着記事
function chample_latest_posts( $wp_query ) {
    if ( is_home() && ! isset( $wp_query->query_vars['suppress_filters'] ) ) {
        $wp_query->query_vars['post_type'] = array( 'post','news','movie' );
    }
}
add_action( 'parse_query', 'chample_latest_posts' );

たとえば、個々の短文投稿は『news』、一覧表示のページは『list』を

利用する場合、新着記事には list だけを含め、RSSには news を表示、という風に使い分けても便利です。トップページに短文投稿の記事一覧がずらずら表示されても邪魔なだけですし、訪問者も「クリックしたら3行しか記事がなかった」となると、低品質サイトと勘違いしますから。

また、ウィジェットの新着リストにカスタムポストを含める場合は、<a href="//wordpress.org/plugins/recent-posts-widget-extended/" rel="noopener" target="_blank">Recent Posts Widget Extended</a> みたいなプラグインを使うと便利です。

記事数が多い場合、ぜひ入れて欲しいのが、検索結果にカスタムポストやコメントなども含めて、広範囲なサーチを可能にする『<a href="//wordpress.org/plugins/search-everything/" rel="noopener" target="_blank">Search Everything</a>』。
デフォルトのままでは、カスタムポストも抜粋も除外されますから、記事数の多いサイトには必須かと思います。

<h3>SEO対策</h3>

上述のように、数行の短文投稿を大量に公開すると、低品質サイトと見なされるそうなので、robots.txt で、カスタムポストのディレクトリごと、bot拒否するか、SEO対策プラグインを使って、index / noindex を手動で設定した方がいいです。

たとえば、短文投稿のカスタムポストを『news』に設定した場合。Disallowでインデックスされないようにします。

<code lang="php">
User-Agent: *
Disallow: /news/

中には、1000字以上のまとまった記事を作成することもあるかもしれません。

個別にコントロールする場合は、All in one SEO や Yoast SEO のような総合対策プラグインを使ってもいいし、一番手軽なところでは、『Noindex Pages』が便利。

二年前に開発が終わったプラグインですが、ちゃんと動作します。ヘッダー部に、meta 情報として、noindex が挿入されます。

//ja.wordpress.org/plugins/noindex-pages/

noindex プラグイン

また、お使いのテーマ・テンプレートによっては、SEO対策がデフォルトで備わっている場合もありますので、そうしたものを積極的に活用しましょう。

Twitterじゃ駄目なの?

短文投稿といえばTwitterが便利で、拡散性もアクセス数もWordPress単体とは桁違いに大きいですが、一方、それに囚われて、サイト運営がおろそかになるというデメリットもあります。一度、どこかにアウトプットして、受け入れられると、そこで満足して、「書きたい、書かねば」というモチベーションも下がってしまうんですね。

それにレスやシェアが気になって、ずっとデスクトップに表示しっぱなし……という方も少なくないのではないでしょうか。

それでも自分の仕事に集中できるなら別ですが、精神的にも、時間的にも負担になるようなら、WordPressの post content 抽出機能を利用して、上記のような短文投稿=連続表示で、週報風に読ませるのも一考かと思います。一定のファンが付いているなら、あちこちに分散するより、サイト一本に集約した方がかえって集客力が高まるかもしれません。

またTwitterだと、お知らせの間に「つぶやき」が交じって、あのニュースはどこだったか、と、訪問者が探すのに手間取ることもあります。

その点、短文投稿の連続表示だと、「新刊のお知らせ」「イベント案内」「制作裏話」など、話題ごとにタグ付けして、関連する投稿だけを1ページにまとめることができます。
Twitterのウィジェットでも一覧表示できますが、10も20もウィジェットが埋まっていると、かえって見づらくないですか?

WordPressもいろんなプラグインが登場して、以前は出来なかったことがどんどん出来るようになっています。

広告代も稼ぐなら、やはり本家のサイトに来てもらうのが一番ですし、Twitterの見出しだけで満足して、足が遠のく訪問者も少なくないので、サイト回帰の意味でも、ぜひトライして頂きたいと思います。

Tags: ,

最終更新日: 2018年2月12日  初回公開日:2018.01.05

海洋小説『曙光』MORGENROOD

CTA-IMAGE
海洋科学、鉱業、建築などをモチーフにした新感覚の人間ドラマ。『生の哲学』をテーマに人生、恋愛、仕事について描く長編小説です。Kindle Unlimitedなら読み放題。