プラグインJetPack

WordPressの新規記事投稿をTwitterに自動でお知らせしたい。

かなり前にそんなことを思いつき、JetPackをプラグインに入れてTwitterと連携させておりました。フォロワーが数百人とかいればブログ投稿時のアクセス初速にも貢献するでしょうが、私の場合は全く意味のない感じですが、Twitter経由のアクセスはちらほらあるので、やって損にはならないと思います。

JetPackの機能

WordPressのプラグインにJetPackを入れている方ならご存じだと思いますが、JetPackにはソーシャル連携以外にも様々な機能がついています。

ブログに必要な雑多な機能がひとまとめされています

JetPackで人気記事の表示

中でも、トラフィック分析系機能の一つに、人気記事表示機能があります。アクセス数の多い人気記事を一覧表示してくれるという機能です。

プラグインを追加すると、外観ーウィジット部分に「人気の投稿とページ(Jetpack)」が追加されるので、これをお好きな場所に置くだけでOKです。

人気記事の表示数・表示場所・表示方法も自由に設定可能

JetPackで人気記事が表示されない

2019年の大型台風19号が通過しているので最中なので、雨戸がガタガタ揺れる音に眠れず、気晴らしにこのdtn.jp運営ブログを眺めていたところ、人気記事ウィジットを追加したところにこんな表示がでていることに気が付きました。

表示する投稿はありません・・・

表示する投稿はありません。トラフィックを増やしたいですか?」だと?

表示する投稿はありませんと出た

「Jetpack 表示する投稿はありません」 で調べてみたところ、不具合のせいでこうなると書かれたサイトもチラチラみられましたが、 ”集計期間が24〜48時間”と書かれているのを見た瞬間にはっと!気が付きました。

この過疎ブログの1日~2日程度のアクセス数では、記事をランキングにするだけのデータが揃うはずがないと。

JetPackの集計期間変更

ログデータ不足で集計ができないんだろうとは思ったので、この集計期間を変えられないかと調べてみたところ、意外とあっさりこれが見つかりまして、Jetpackのデベロッパーサイトにもコードがしっかり書かれてありました。

//JetPackの集計期間変更
function jetpackme_top_posts_timeframe() {
    return '30';
}
add_filter( 'jetpack_top_posts_days', 'jetpackme_top_posts_timeframe' );

WordPressのadd filter関数を使って、指定のフィルターフックに関数を実行するといった感じのようです。

この場合は、jetpack_top_posts_daysに、jetpackme_top_posts_timeframe()で30を返しています。この30が集計期間の日数ということらしいです。

WordPressのマニュアルを見ると、add_filterはこんな使い方でした。

add_filter( $tag, $function_to_add, $priority, $accepted_args );
  1. $tag・・・次の引数で指定する関数を登録するフィルターフックの名前
  2. $function_to_add・・・フックしたタイミングで実行するその関数
  3. $priority・・・優先順位を整数で指定。ここでは1個だけの為になし
  4. $accepted_args・・・関数で使用する引数の数。ここでは引数なし

おわりに

公式マニュアル通りに30に変えてみたところ、無事人気記事が指定した6個表示されました。表示数をもっと増やしたら表示されないかもしれませんが。

そうこうしている間に台風も走り去っておりました。もう台風はこりごりです。

土曜の22時に人がいないスクランブル交差点

PHPが学べるおすすめプログラミングスクール

この運営ブログをみて、もしdtn.jp管理人のようにサイトをゼロから作ってみたいという思いに駆られた方は、サイト開発やプログラミングをオンラインで受講できるプログラミングスクールの活用をしてみてはいかがでしょうか。サーバ/WordPress/HTML/CSS/JS/PHP/SQLなどの基本さえ分かれば、ゼロからサイト立ち上げもポンポンできるようになって、今なら仕事や転職にも役立つのでオススメです。

PHPも学べるオンラインスクール

  • CodeCampAWS Cloud9を使ったクラウド上のIDEが用意されているので、ネットにつながればスタート開始可能というゴージャスなスクールです。講師も選べて、Webマスターコースならプログラミング経験0でも一気にフロントエンドからバックエンドまでマスターできます。
  • ウェブカツJava言語やRuby言語なんぞ教えん!という、初心者にありがちな挫折ポイントがよく分かってるスクールです。フロントエンドエンジニアに必要なスキルセット&PHPがマスターできます。
  • フリークス HTML/CSSから始まり、MySQLやLinuxからPHPの変数や分岐やループ、クラスやPDOに最後はMVCまで教えてくれるので、そこまで分かればなんでもできそうです。メンターに質問もし放題がいいですね。
  • テックアカデミー法人のIT研修もやってる業界最大手・受講者数No.1のスクールです。メンターとの定期オンライン面談やチャットサポートなどもあり、大手ならではインフラ環境がウリです。PHPと合わせてjQueryもマスターできる、PHP/Laravelとフロントエンドコースがおすすめです。

オンラインスクールのデメリット

孤独になりがちなサイト制作も、優しいメンターがそばにいてくれれば凄い楽しそうですが、もちろんデメリットもあります。お金がかかるという点です。ひたすらググって、本を読んでよりは確実にコストがかかってしまいます。とはいえ、多少の余裕があるなら、こんなご時世なので時間と労力を買った方が良いと思います。