[Pz-LkC][1.7.5]リンクをカード形式で表示するプラグイン更新。リンク切れチェック実装など。

Pz-LinkCard
この記事は約5分で読めます。

リンクをカード形式で表示するWordPressプラグイン「Pz-LinkCard」。

最新版ver1.7.5を公式プラグインディレクトリで公開しました。

このプラグインについて

WordPressでリンクをブログカードっぽく表示したりするプラグインです。

WordPress4.4でURLを直書きするとインラインフレーム(iframe)でカードっぽく表示される機能が実装されました。(リンク先もWordPress(4.4以上)である必要があったり、レイアウトの変更はスタイルシートをいじる必要があります。)

また、現在、当サイトでも使用している、わいひら(@MrYhira)氏作成のテーマ「Simplicityシリーズ」などでもブログカードの機能があります。

iframeタグを組み込むブックマークレットを使用する方法や、function.phpに組み込む方法など、リンク先をブログカードを表示する方法はいくつかあります。

そういったものを比べて自分の使い方とかに合った方を使うとよいと思います。

当プラグインはショートコードを使用するため面倒ではありますが、その代わりに今後同じような高機能なプラグインが見つかった場合は乗り換えが簡単です。

また、ショートコードが好きなものに変更できるので、今まで使用していたプラグインから乗り換えてくるのも簡単です。

デフォルトのテーマは敢えて奇抜な感じにしていますが、気分やテーマに合わせた外観にすることが出来ます。

ver1.7.4→ver1.7.5変更点など

2016年10月19日に公開したver1.7.4からのバージョンアップです。

バージョンアップ時にゴミデータの削除

過去のバージョンにて重複データが作成されてしまう不具合があったため、アクティベート時/バージョンアップ時に重複データを削除するようにしました。

重複していた場合、一番古く取得したものが残ります。

設定画面の項目整理

機能追加したもののほとんどが設定画面の一番下にある「詳しい人向け(Debug)」の項目に追加されていたため、「詳しい人向け」の項目が多くなってしまいました。

実装から時間が経って安定して動作しているのを確認できたため、それぞれ適した項目に移しました。

「定型書式」の名称を変更

「定型書式」を選択することで、細かい面倒な設定をしなくても、「セロテープを貼ったような効果」や「紙がめくれたような効果」を設定することができました。

その代わりに他の設定項目に優先されて書式が適用されます。

この機能の名称を「定型書式」から「かんたん書式設定」に直して、一番上の項目にしました。

行間設定

タイトル、URL、抜粋文の行間設定が行えなかったため、使用しているテーマによっては文字が重なってしまったり、行間が開きすぎてしまったりしました。

行間の広さを設定する項目を追加しました。

カード管理画面での内部サイトの判定方法を変更

今までは取得時にサイトURLと同じものに「内部リンク」である印を付けていたため、サイト移転などをしたときに内部リンクと外部リンクの判定が一致しないことがありました。

カード管理画面で表示するときに外部リンクか内部リンクかを判断するように改善しました。

カード管理画面でリンク切れなどの確認ができるように機能追加

リンク先の記事内容を取得したときと状態(ステータス)が変わっているものについて、赤字で表示するようになりました。

また、「更新あり」をクリックすることで状態が変わっているものだけの一覧が表示されます。

リンク切れのときにリンクを無効にするように機能追加

最後に確認したステータスが「404 Not Found」もしくは「410 Gone」のときにリンクを無効にします。

「5xx」番台のサーバーエラーは復帰する可能性があるのでリンク無効にはしていませんが、「403 Fobidden」など、追加するコードを検討中です。

内部リンクのキャッシュが正常に作成されない不具合を修正

メイン部分のプログラムを見直したときに不具合が生じていました。

これにより内部リンクのときにキャッシュを優先にしていない場合でもアイキャッチ画像(サムネイル)が表示されないことがありました。

内部リンクでキャッシュ優先時の処理を変更

内部リンクをキャッシュ優先にした場合の処理を見直しました。

画像URLはキャッシュから取得するので、あとでアイキャッチを変更しても画像が変更されなくなりました。

カード管理画面から「再取得」を行うか、「編集」から画像URLを直接変更してください。

(画像URLは変更できない見かけになっていますが、ダブルクリックすると変更できるようになります。)

URL末尾のスラッシュを無視する設定を追加

ver1.7.0で「ドメイン名のみのときに末尾のスラッシュを除外する」機能を実装しましたが、今回はドメイン名のみ以外のときも有効にできるようにしました。

リンク切れを一定時間ごとに確認

リンク先サイトが取得時は「200 OK」だったのに、「403 Not Found」になってしまった場合などに、お知らせする機能「アライブ チェック (alive check)」を実装しました。

「リンク切れ」そのものをチェックする機能では無く、記事内容取得時とステータスが変わっているもののステータスコードを赤字で表示する機能となります。

現在は1時間に1件ずつ確認する設定となっています。数件しか登録していない場合、一日に数回、何百件も登録しているとなかなかチェックしない状態となっているので、見直ししていこうと思います。

「403 Not Found」になったときに、WordPressに登録している管理者用メールアドレスにメールする機能も考えています。

アイディアなどあれば、ツイッターなどで教えていただけるとそういう実装になるかも知れません。

その他

今回は、以上です。

久々に「バージョンアップ」という感じでした。

特にアライブチェック(リンク切れ確認)が実装できたのが良かったです…!Σ(゚ロ゚)o゙

では、この辺で。(^-^)o

コメント

  1. コメント欄の番号は固定値じゃないのですね、

    そんなことよりエラーメッセージについてですが

    Parse error: syntax error, unexpected ‘[‘ in /www/******/ドメイン名/public_html/wp-content/plugins/pz-linkcard/pz-linkcard.php on line 875

    となっております。
    導入しているプラグインは数がおおいので、、、
    私はTwitterはしておりません。メールで連絡しようかとおもいましたが、メールボックスやアドレスが見当たらなかったため出来ていません。
    お手数おかけします。

    • 佐藤さん、ご利用、コメントありがとうございます。

      当ブログのコメントについて、最新のコメントが一番上に来るようにしていたため、連番は動的でしたが、「〇〇番と同じ…」というような記述がし易そうなので、最新のコメントは後に来るように直してみました。

      また、Pz-LinkCardについて、メッセージを記述いただけたため、内部リンクのアイキャッチ画像の取得部分でエラーが発生していることが分かりました。
      おそらくアイキャッチ画像が無いテーマを利用している場合に発生していると思われます。これについてはプログラム内でのチェックが抜けておりましたので修正いたします。ありがとうございます。

      →対応版1.7.7を公開しました。

      • 素早い対応有難う御座います。

        無事動作しました、使わせて頂き有難う御座います。

        • 良かったです。ありがとうございました。(^-^)o

  2. はじめまして、いつも愛用させていただいてます。
    私も1の方と同様に1.7.4から1.7.6に更新したら同様のエラーが起きました。
    バージョンを1.7.5に落としましたがこれもまた同様のエラーが起きたため、
    以前使っていた1.7.4に再インストールし使用しています。
    WordPress の最新バージョン 4.7.1です。

  3. PZCardLinkを愛用させて頂いております。
    ありがとうございます。

    本日Ver.1.7.4よりVer1.7.6に更新したところ、
    875行目に重大なバグが発生したため、有効化できないとのエラーメッセージが出ました。

    現在は1.7.4を再インストール・有効化して解決しております。
    ワードプレスは最新バージョンを使用しております。

    対処のご検討、宜しくお願い致します。

    • 榎本さん、ご利用ありがとうございます。

      こちらでは同じ事象が発生しておりませんため、エラーメッセージが表示されているところのスクリーンショットなどをツイッターのダイレクトメッセージ(DM)もしくはメールでいただきたいと考えておりますが、どちらか対応出来ますでしょうか。
      よろしくお願いします。

      →対応版ver1.7.7を公開しました。

タイトルとURLをコピーしました