[Pz-LkC][2.4.4.x]リンクをカード形式で表示するプラグイン更新。画面レイアウト見直し等。

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

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

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

※[03/10 Ver.2.4.4.1]カード管理の抜粋文が反映されない不具合修正。
※[03/11 Ver.2.4.4.2]ダブルクォートを全角で入力してしまった場合も許容するように修正。
※[03/22 Ver.2.4.4.3]テキストリンク行の検索条件修正。

ver2.4.3.x→ver2.4.4修正点

2021年02月28日に公開したver2.4.3からのバージョンアップです。

不具合の修正を行いました

以下の不具合について、修正しました。

  • Ver2.4.3.1~2.4.3.3の改修内容を取り込みました。
  • URLパラメーターにクォート文字が残ってしまう不具合を修正。
    →URLパラメーターを分析する際の不要な文字を除去する機能を強化しました。
  • ソーシャルカウントが表示されていなかった不具合を修正。(Ver.2.4.2.1から発生)
    →何故かソーシャルカウントを表示する部分を削除してしまっていたので復活させました。
  • ソーシャルカウントの取得が出来ない不具合を修正。
    →データ型の扱いを誤っていたのを修正しました。
  • 設定画面の「外部リンク」タブの「記事取得方法」が正しく表示されない不具合を修正。
    →設定画面の表示方法を見直した際に修正方法を誤っていました。
  • 設定画面の「内部リンク」タブの「記事取得方法」を選んでも反映されない不具合を修正。
    →外部リンクの記事取得方法が表示されなかったのと同じ原因でした。

Pzカード管理画面について追加および修正をしました

カード管理画面について、以下のとおり追加および修正をしました。

  • カード管理画面のレイアウトを一部見直し。
    →一覧の列幅の調整等を行いました。
  • カード管理画面の見出しに「カードボックス」のアイコンを追加。
    →カードの管理画面とぱっと見で分かりやすくなるものを選びました。
  • カード管理画面の検索窓の左側に「虫眼鏡」のアイコンを追加。
    →検索窓と分かりやすくしたつもりです。
  • カード管理画面のスタイルシートを直書きしていたものをCSSファイルへ移動。
    →見た目は変わりませんが、内部的に綺麗にしました。キャッシュの関係で管理画面のアクセスに関する通信量が少し減ると思います。
  • カード管理画面の右上に「設定画面」へのリンクを追加。
    →設定画面と管理画面の行き来がしやすくなりました。
  • カード管理画面のエディタ画面のレイアウトを一部見直し。
    →少し影を付けたりやや調整しました。
  • カード管理画面のエディタ画面に見出しを追加。
    →「キャッシュエディター」とタイトルが付きました。
  • カード管理画面のエディタ画面の上側にも保存とキャンセルのボタンを追加。
    →下の方にしか無かったので、上にも付けました。
  • カード管理画面の一覧のサムネイル画像をクリックすると新しいタブで画像を表示するように変更。
    →画像を確認したい時用に。
  • カード管理画面の一覧のURLの先頭に、アクセス不能な場合「⛔(通行禁止)」のアイコンを表示するように変更。
    →HTTPコード400~500番台の時に表示されます。リンク切れが分かりやすいようにしました。ツイッターやインスタグラムはアクセス可能でもプログラムからはリンク切れに見えます。
  •  カード管理画面の一覧のURLの先頭に、アクセス不能だがエラー無視の設定をしている場合「⚠(警告)」のアイコンを表示するように変更。
    →主にツイッターやインスタグラム等、リンク切れに判定されるサイトのエラーを無視する機能を有効にしたのが分かります。
  • カード管理画面の一覧のURLの先頭のアイコンの大きさを9pxから16pxへ変更。
    →⛔とか⚠とかのアイコンが目立ちます。
  • カード管理画面の一覧の結果コードの数字にポインタを合わせると結果メッセージがツールチップで表示されるように変更。
    →200だと「OK」、403だと「Not Found」等と表示されます。
  • カード管理画面の一覧のクイックメニューを選択中の行のみに表示されるように変更。
    →WordPressの投稿画面の一覧の仕様に合わせました。
  • カード管理画面の一覧の下側にもページナビを追加。
    →WordPressの投稿画面の一覧の仕様に合わせました。下にスクロールした時でもページが変えられるのが便利です。
  • カード管理画面のエディタの結果コードの横に結果メッセージを表示するように変更。
    →一覧に追加したのと同じように、「403」に「Not Found」等と表示されます。何となくどんなエラーなのか分かるようになると思います。
  • カード管理画面のエディタに結果コードがエラーでもリンク切れ状態にしない「エラーを無視」の項目を追加。
    →設定画面に一律400番台エラーを無視する設定がありますが、個別で設定できるようになりました。
  • カード管理画面の「ファイルメニュー」の見出しに「書類」のアイコンを追加。
    →見た目の問題。趣味みたいなものです。
  • カード管理画面の「エクスポート」の出力項目を現在の記録項目に合わせて修正。
    →今まで「出力する項目」を定義していたので、項目が追加された際に修正漏れする場合がありました。今回から「出力しない項目」を定義するようにしたので、項目が追加された際に修正漏れがありません。(プログラム内部的な話)

Pzカード設定画面について追加および修正をしました

設定画面の修正を行いました。

  • 設定画面のレイアウトを一部見直し。
    →全体の見やすさを検討しました。見た目はあまり変わらないけど表示に関するプログラム内部を最適化した物等。
  • 設定画面の見出しに「ギア」のアイコンを追加。
    →設定画面とぱっと見で分かりやすくしたつもりです。
  • 設定画面の各設定の見出しの書式を変更。
    →WordPressの設定画面に準拠した書式を意識していましたが、ひとつのタブに複数の設定があった場合に分かりづらかったので、ぱっと見で見出しだと分かるようにしました。
  • 設定画面のスタイルシートを直書きしていたものをCSSファイルへ移動。
    →見た目は変わりませんが、内部的に綺麗にしました。キャッシュの関係で設定画面のアクセスに関する通信量が少し減ると思います。
  • 設定画面の右上に「カード管理画面」へのリンクを追加。
    →設定画面と管理画面の行き来がしやすくなります。
  • 設定画面の「エラー」タブのエラー解除方法をチェックを外す方法からボタンを押す方法へ変更。
    →分かりやすい「普通のやり方」にしました。
  • 設定画面の「リンク先の検査」タブの「ユーザーエージェント」を書き換え可能項目に変更。
    →分かる方用に。
  • 設定画面の「エディタ」タブの「パラメータ(表記例)」を修正。
    →ここを見てる方はいないかも知れませんが、少しだけ分かりやすくしました。
  • 設定画面に「管理者」タブを追加。
    →管理者モードでしか表示されないので、通常は見られません。
  • 設定画面に「管理者」タブに「WP-Cronの設定」を追加。
    →管理者モードでしか表示されないので、通常は見られません。
  • 設定画面の「上級者向け」タブ内の設定項目を整理しました。
    →「上級者向け」タブの中を「上級者向けの設定」と「拡張機能の設定」に分けました。「拡張機能」はチェックを付けると「初期化タブが表示される」といった機能があります。
  • 設定画面の「マルチサイト」タブに設定が変更できない旨のメッセージを追加。
    →元々、参照のみの機能です。
  • 設定画面の「マルチサイト」タブに「テーブル名称」を追加。
    →これが分かると、カード管理がどこを見ているのかが分かります。
  • 設定画面の「マルチサイト」タブに「サブサイトへのリンク」の設定を追加。
    →メインサイトから見て、サブサイトを外部リンクとして扱う設定項目です。常にチェックが入っていて、変更は出来ません。機能をユーザーに明示化するための項目です。
  • 設定画面の「初期化タブ」「調査モード」「管理者モード」「開発者モード」を変更した際、「変更を保存」を押さなくても即時反映されるように修正。
    →jQuery勉強中。
  • 設定画面の「設定を保存した日時」の表示項目を「上級者向け」タブから「基本」タブへ移動。
    →最後に設定を保存日した日は上級者向けの項目でも無かったので移動しました。

その他の修正について

その他の修正をしました。

  • URLパラメーターで許容するスキーム(プロトコル)を追加。(http: / https: / file: / ftp: / data: / ogg: を許容します。)
    →今まで、http: と https: のURLしか指定できませんでした。需要があるかは分かりませんが、ftp: 等も使用できるようになりました。
  • URLパラメーターが不正な場合、カード管理画面に登録されないように修正。
    →スキームが正常で無い物等が登録できていたので、そういうのは弾くようになりました。
  • 旧バージョンからのオプション引継ぎの処理を一部変更。
    →プログラム内部的な変更で、見た目や機能には影響しないはずです。
  • require_once を include に変更。
    →プログラム内部的な変更で、見た目や機能には影響しないはずです。require_onceの動作を誤解していたため、念のためincludeに修正しました。

ver2.4.4→ver2.4.4.1修正点

  • 「WordPress 5.7」での動作確認を行いました。
  • 内部リンクで「抜粋文を優先」を設定しても抜粋文が取得できない不具合を修正しました。
  • 内部リンクで「カード管理を優先」を設定してもカード管理の内容が取得できない不具合を修正しました。

ver2.4.4.1→ver2.4.4.2修正点

  • URLに「%20」(半角スペース)が使用されていた場合、文字を詰めてしまっていたのを「%20」のまま残すように修正。
  • URLパラメーターでURLを半角ダブルクォートで囲まずに、全角ダブルクォートで囲ってしまった場合でも正しくURLを認識するように修正。

ver2.4.4.2→ver2.4.4.3修正点

  • 設定画面とカード管理画面のアイコンとして表示している絵文字のスタイルをemojiに変更。
  • 「テキストリンク行を変換」を使用した際、画像タグ等が入っているバナー等もリンクカードに変換してしまっていたのを修正。

既知の不具合等

  • jQueryの動作
    →「設定画面でタブをクリックしてもタブが開かない」「ビジュアル エディタで挿入ボタンが表示されない」という事象が報告されていました。それっぽいところを修正しましたが、直った報告が1件、直らなかった報告が0件なので、直ったのか直ってないのか不明ですが、報告が無いのでいったん解決としようと考えています。
  • リンク切れの発生
    →Ver2.4.3でURLの分析方法を大きく変えたため大量のリンク切れが発生したという報告を2件受けました。1件は解消、1件はPz-LinkCardを使用しなくすることで解消。それ以外の報告が無いので解決したと見るか悩んでいます。

今後の課題など

facebookのシェア数

現在、facebookのシェア数は更新されません。

ユーザーが個別にAPキーを入手・設定しないといけないのですが、何か良い方法が無いか検討します。(簡単な実装方法があったら教えてください。)

Twitterへのリンクができない

Twitterはプログラムからのアクセスを拒否しているため、内容が取得できません。

URLを直接貼ってoEmbedの機能で表示させるか、Twitterのサイトからコードを作成して貼ってください。

もしくはカード管理からタイトルや概要文を手入力してエラー無視のチェックを付けてください。

少量のツイートならば登録をしなくてもAPIを使って取得できそうなので、良い実装方法を検討しています。

facebook・インスタグラムへのリンクができない

facebookとインスタグラムはプログラムからのアクセスを強烈に拒否しているため、内容が取得できません。

Pz-LinkCardで表示させたい場合は、カード管理からタイトルや概要文を手入力してエラー無視のチェックを付けてください。

Amazonへのリンクができない

Amazonはプログラムからのアクセスをなるべく拒否しているため、内容が取得できない場合があります。

「リンク先の検査」の「ユーザーエージェント」のチェックを外すことで内容が取得できる場合があります。

その他

お気づきの点などありましたら、コメント欄や、ツイッターアカウント「ぽぽろん@ぽぽづれ。(@popo68k)」もしくは「ぽぽづれ。(@popozure)」までご報告ください。

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

コメント

  1. お世話になります。
    外部リンク様にプラグインを利用させていただいております。

    すみません、こちらで良いのか分かりませんが使用していて不明な点がありましたので質問したく、コメントさせていただきました。

    1つの記事内に同じURLのテキストリンクとURL変換したブログカードが混在するとテキストリンクにショートコードが自動的に入ってしまい、気づかない間にリンク切れしてしまいます。

    自分なりに検証しただけなので、これが原因かはわからないのですが…。

    設定では「テキストリンク行を変換」にチェック外していますが、この設定ではダメでしょうか?

    また、同じURLのブログカードが2個ある時に、”] というものが出てきてしまいます。
    ビジュアル&コードエディター上も見当たらないのですが、プレビュー画面には表示されます。

    お忙しいところ、申し訳ありませんが解決方法あれば教えていただけますと幸いです。

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

      以下の状態で確認を行いました。

      ・同じURLのカードを複数設置。
      ・カードと同じURLのテキストリンクを設置。

      いずれでも現象が確認できませんでした。

      Twitterのアカウントがありましたら、 @popozure にDMでエディターで編集している状態のスクリーンショットを送っていただけると助かります。

      • ご返信ありがとうございます。
        こちらのコメントに気が付かず、返信が遅くなりまして申し訳ありません。

        11月15日頃に「印西ディスカバリー」というブログ名と同じアカウントよりDM差し上げています。

        エディター編集中のスクショも送らせていただいています。

        お忙しいところ恐縮ですが、確認の程よろしくお願い致します。

  2. お世話になっております、『Pz-LinkCard』を使わせていただいております。
    表示がうまくいかず、対応方法を教えていただけると助かります。
    どうぞよろしくお願いいたします。

    ◯現象
    ・旧サイトではカード型で表示されていたのに、新サイトへ移行後は簡易版表示になってしまう。
    →旧サイトから投稿記事をプラグインで移行した際、関連するプラグインも付随させる設定にしていました。

    ・新規の投稿で『Pz-LinkCard』専用のショートコードを記事に貼り付けても変わりません。
    →スタイルシートの問題ではなく、ショートコードから生成されるHTMLがそもそも簡易版になっていしまいます。AMP化はしていません。

    旧ブログで生成されるHTMLは、

    <a href="~" rel="nofollow ugc"><img class="lkc-favicon" src="~中略

    新ブログで生成されるHTMLは

    ~<a href="~" rel="nofollow ugc">~

    ◯試したこと
    ・プラグイン『Pz-LinkCard』の再インストール。
    →旧サイトから投稿記事をプラグインで移行した際、関連するプラグインも付随させる設定にしていました。
    ・他のプラグインが干渉していないか調べる。
    →新サイトはまだテスト中のためパスワード保護のプラグインを入れているが、外しても変わらない。その他のプラグインを外しても変わらない。
    ・インストール済みのプラグインにAMPに関するものがないか調べる。
    ・functions.phpに旧サイトから引き継いだコードと新サイトのコードが干渉していないか調べる。
    ・『Pz-LinkCard』の初期化。
    ・参考サイトの内容を試す。

    • コメントありがとうございます。

      サイトのURLを教えていただければ調査します。
      コメントでURLを記述(他の人からもURLが分かります)するか、TwitterのDMで教えていただけると助かります。

      もしくは大丈夫ならメールアドレス宛にメールをしますので、URLを記述して返信して貰う方法があります。

      • どうもありがとうございます!ただいまTwitterのDMから送らせていただきました。お手数をおかけしますがよろしくお願いいたします。

  3. いつも利用させていただいてます。

    最近ブログランキングのリンクが反応してしまいリンクカードになってしまいます。
    半角スペースを入れると消えるのを発見して全記事に処理をしましたが、しばらくするとまた反応してリンクカードになってしまいます。
    なにか設定方法など有りましたらお教えいただけると助かります。

    • ご利用&コメントありがとうございます。

      サイト見ました。「にほんブログ村 子育てブログ」のバナーがリンクカードになってしまっていますね。

      この現象については「ver2.4.4.3」で修正したつもりだったのですが抜けがあったようですね。

      よろしかったら、エディタに記述しているHTMLのテキストのコピーかスクリーンショットをいただけますでしょうか。

      こちらのコメントまたはTwitterアカウント @popozure もしくは @popo68k にDMでいただけると助かります。

      • コメントの返信ありがとうございます。
        以下が、にほんブログ村のHTMLです。

        <a href="https://baby.blogmura.com/ranking/in?p_cid=xxxxxxxx" rel="nofollow ugc"></a>
        <a href="https://baby.blogmura.com/ranking/in?p_cid=xxxxxxxx" rel="nofollow ugc">にほんブログ村</a>

        以上ご確認よろしくお願いいたします。

        • ありがとうございます。HTML確認できました。

          「テキストリンクを変換する」を有効にしている場合、<a>タグに文字をくくっただけの行はリンクカードになってしまいますね。

          例えば、

          <a href="..."><span>にほんブログ村</span></a>

          というように、何かかしらのタグを入れる事でリンクカード化を防ぐ事が可能なのですが、こういった対応は可能でしょうか?

          もしくはオリジナルバナーの部分だけを使用して、テキストリンクの行は記述しないという対応は難しいでしょうか?(にほんブログ村の利用規約は未確認です。)

          どちらも難しいということであれば、変換の条件には合致してしまうので、指定URLを除外する設定を追加するかどうか、というところでしょうか。

          • コメントの返信ありがとうございます。

            <a href="https://baby.blogmura.com/ranking/in?p_cid=10956399" rel="nofollow ugc">にほんブログ村</a>

            ここの部分ですが、にほんブログ村の規約で改変や削除が禁止?と聞いたことがあったので、そのままにしていました…。

            ひとまず「テキストリンクを変換する」を無効にしてみます。
            (これで今の所は問題なさそうです)

            お忙しいところご対応ありがとうございました。m(_ _)m

            • もしも外部リンクがURL直書きかショートコードで記述しているならば「テキストリンクを変換する」を無効にする方向で対応お願いします。

              外部リンクをテキストリンクで記述していた場合、むしろリンクカードにならないリンクが出てしまうので確認をお願いします。

              今、修正点が溜まっていてすぐに対応は出来ませんが、除外URLの機能は一応検討には入れようと思います。

  4. お世話になっております。pz_linkcard ver.2.4.4.3を使用させていただいております。

    現在使用中のwordpressサイトにて以下のエラーが出ています。

    [29-Mar-2021 01:27:39 UTC] WordPress データベースエラー: Duplicate entry 'xxx' for key 'url_key' for query INSERT INTO wp_pz_linkcard (url, url_key, scheme, domain, thumbnail, favicon, charset, sns_time, sns_nexttime, sns_twitter, sns_facebook, sns_hatena, sns_pocket, use_post_id1, use_post_id2, use_post_id3, use_post_id4, use_post_id5, use_post_id6, regist_title, regist_excerpt, regist_charset, regist_time, regist_result, update_time, update_result, mod_title, mod_excerpt, alive_time, alive_nexttime, alive_result, url_redir, no_failure) VALUES ('値'......'値','値') made by do_action_ref_array('pz_linkcard_alive'), WP_Hook->do_action, WP_Hook->apply_filters, Pz_LinkCard->schedule_hook_alive, include('/plugins/pz-linkcard/lib/pz-linkcard-cron-alive.php'), Pz_LinkCard->pz_SetCache

    wordpressサイトの画面上ではエラーは今のところ確認できておりません。
    また、記事を自動で更新するような処理などは実施してません。
    一番最初に起こった時刻は[09-Mar-2021 15:46:49 UTC]です。
    また、このエラーは1日あたり約1200件ほど出力されています。
    深夜帯もたくさん出力されています。

    タイミングとしてはPz-LinkCard Ver.2.4.4へのアップデートのタイミングが怪しいと思いますが、原因と解決策がわからず困っております。

    なにかご存じでしたらご教授ください。

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

      WordPress.orgで質問していただきましたが、こちらに移動していただいてありがとうございました。

      可能であればPz-LinkCardのエラーに関するログ(機密情報はマスクしてください)を見てみたいので、メールにて送付いただけると助かります。

      まずはメールアドレスを伝えるために、こちらからメールをお送りいたします。

      よろしくお願いします。

      • ご返信と、エラーログの止め方についての対応ありがとうございます。
        ログについてはWordPress.orgに記載させていただきました。

        • ありがとうございます。ログについて確認が出来ました。

          バックグラウンド処理でエラーが出ている事は分かりましたが、対策をしているつもりの部分だったのでもう少し調査したいと思います。

          とりあえずエラーが出なくなったようで良かったです。

          いずれにしてもURL_KEYによるエラーが出ないように見直しをしたいと思っています。

      • ご返信と、エラーログの止め方についての対応ありがとうございます。
        ログについてはWordPress.orgに記載させていただきました。

  5. お世話になっております。
    プラグインを使用させていただいているのですが、
    リンク先の情報が文字化けになってしまいます。
    ページURLを記載しますので対応方法をご教示いただけますと幸いです。

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

      調査いたしましたところ、このリンク先のサイトさんはHTML内に、

      と記述してあり、文字セットは EUC-JP であると宣言されています。

      実際には UNICODE UTF-8 で記述されているのが原因です。

      現在、Pz-LinkCardはリンク先のHTMLのcharsetを優先しているため、このような状態になっています。

      対応方法といたしましては、

      ① Pz-LinkCardを修正。charsetを優先せず常に文字判定を行う。
      ② ①の対応を行うが、設定によって有効・無効を決められる。
      ③ リンク先サイトさんに現状を伝え、HTMLを修正してもらう。

      サイトさんのためにも③が最善なのですが、対応したい気持ちがあるというのも正直なところです。

      文字判定は初回の取得のみなので処理時間には大差は無いと思うのですが、誤判定が増えるのが怖いため、①よりは②が現実的かと思っています。

      こちらでも検討いたしますが、対応のご希望等ございましたらお申しつけください。

      改めて要望としていただく事で、こちらもモチベーションが上がる場合がありますので。

      • とりあえず、「沖縄M&Aサポート」さんへは問合せフォームにより問い合わせをしておきました。

      • ご連絡ありがとうございます。

        可能であれば②の対応を行っていただけるとこちらとしても非常に助かります。

        差し支えなければ対応のほど宜しくお願い致します。

        • 分かりました。

          次の公開バージョンで対応できる方向で検討いたします。

          • なかなか作業が進まなくて申し訳ありません。

            とりあえずリンクカードの内容を直す場合、

            ツール → Pz カード管理 を開いて、

            編集したいリンクカードを探して「編集」をクリック。

            編集画面になるので、タイトルや抜粋文を入力しなおすととりあえずちゃんと表示されるようになります。

  6. ご対応のほうありがとうございました。
    修正版に変更させていただき問題ありませんでした!迅速に対応していただき助かりました!
    引き続き利用させていただきますのでよろしくお願いいたします。

    • ご確認とご報告ありがとうございます。

      また何かございましたらお気軽にお問い合わせください。

  7. お世話になっております。
    いつもプラグインのほう使用させていただいておりますが、ver2.4.4に変更後にリンクカードが機能しなくなりました。(リンク先に飛ばない)ver2.4.4.1にバージョンアップしても直っておりませんでしたので、対応方法を教えていただければ助かります。
    よろしくお願いいたします。
    サイトも貼っておきますのでご確認ください。

    • ご利用ありがとうございます。

      BLOGCARD URL=”https://~”という感じでショートコードを記述していただいていると思いますが、ダブルクォート(上チョンチョン ” )が全角になっていると思われます。

      半角で記述しなおしてみてください。

      なお、全角で書き間違えても動作するつもりでしたので、修正したいと思います。

      [00:25 追記]
      開発環境で修正が出来て、指定されたと思われる全角ダブルクォートを使ってもリンクが機能することを確認しました。

      リリースのタイミングについては、リンク切れが多数ある等、お急ぎであれば早めにリリースいたします。

      • ご返信のほうありがとうございます。
        ショートコードについてはすべて書き換えなければいけないので、なるべく早めにアップデートしていただければ助かります。
        お手数ですがよろしくお願いいたします。

        • それだと大変ですね。

          修正版 Ver.2.4.4.2 を公開しました。ご確認くださいませ。

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