[Pz-LkC][1.8.1]リンクをカード形式で表示するプラグイン更新。外部サイトのサムネイル取得など。

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

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

ver1.8.0→ver1.8.1修正点

2017年2月13日に公開したver1.8.0からのバージョンアップです。

WordPress 4.8での動作確認

最新のWordPressでの動作を確認しました。

かんたん書式設定に「シンプル」を追加

選ぶだけで外観を大雑把に設定できる「かんたん書式設定」に「シンプル」を追加しました。

はてなブログカード風のシンプルな見た目になります。

外部サイトのサムネイルの直接取得に対応

設定画面の「外部リンク」の「サムネイル」の項目に「直接取得」と「直接取得できない場合、WebAPIを利用する」を追加しました。

リンク先サイトでOGP(facebook向けの概要)やTwitterカードの設定をしている場合、それらの画像を取得してきます。

画像は縮小されてプラグインのフォルダに保存されます。削除や変更をする機能は無いため、リンク先の画像が修正されても反映されません。

プラグインをバージョンアップするとプラグインのフォルダは全て置き換わるため、バージョンアップ時に画像のキャッシュは削除されることになります。

まだ「試用段階」と思っていただけると幸いです。

その他

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

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

広告

『[Pz-LkC][1.8.1]リンクをカード形式で表示するプラグイン更新。外部サイトのサムネイル取得など。』へのコメント

  1. 名前: 投稿日:2017/07/02(日) 20:03:34 ID:8a64feec0 返信

    ぽぽろん様
    お返事ありがとうございます。Twitterはやってないので、Gyazoに上げてみました。
    https://gyazo.com/

    テストのため、こちらのブログURLをお借りしています。
    (※ローカル環境でテストしています)

    見れますでしょうか?
    管理画面のこのページでのみ、文字化けをしてしまうのです。
    本文や設定画面は文字化けしていません。

    • 名前:ぽぽろん 投稿日:2017/07/02(日) 21:07:33 ID:fd761ccf7 返信

      ありがとうございます。画像を確認しました。(念のためURLは伏せておきました。)

      予想としてはDBの文字コードの問題のような気がしますので、phpMyAdminなどで、pz_linkcardテーブルの文字コードが「utf8」になっているか確認していただけると助かります。
      こちらでも調べてみます。

      その他、動作に問題が無いようならこのままお使いになっていてください。

      • 名前:ぽぽろん 投稿日:2017/07/02(日) 21:25:52 ID:fd761ccf7 返信

        Pz-LinkCardではキャッシュに使用するDBテーブルを作成するときに、文字コードとして「UTF8を指定する前提」で、WordPressのデフォルトの文字セットを使用するようになっています。
        WordPressもしくはDBの文字セットがUTF8以外なのでは無いかと予想されますがいかがでしょうか。
        https://popozure.info/20150725/7771

        このトラブルはローカル環境だからこそ起こりやすい環境設定との兼ね合いのような気がします。
        また状況が分かりましたら調査します。

        • 名前: 投稿日:2017/07/02(日) 21:49:58 ID:8a64feec0 返信

          ぽぽろん様
          お忙しい中、一緒に見ていただいてありがとうございます。
          DBの文字セット、ということで見てみました。
          InstantWPというソフトを使ってるのですが、MyAdminを見てみたところ、文字コードがutf8mb4_unicode_ci となっていました。
          これが原因なんでしょうか。

          • 名前:ぽぽろん 投稿日:2017/07/02(日) 21:53:33 ID:fd761ccf7 返信

            DBの確認ありがとうございます。DBの標準の文字セット(照合順序)が「utf8mb4_unicode_ci」であれば問題無いはずですので、そこは大丈夫です。
            「wp_pz_linkcard」の「構造」を見てみていただいて、そちらの照合順序も「utf8mb4」から始まるものになっておりますでしょうか。
            何度も確認していただいてすいません。

        • 名前: 投稿日:2017/07/02(日) 21:54:21 ID:8a64feec0 返信

          すみません、追記です。
          DBのpz_linkcardテーブルの文字コードはutf_general_ciになっており、InstantWP自体の一般設定の文字コードはutf8mb4_unicode_ci でした。

          • 名前:ぽぽろん 投稿日:2017/07/02(日) 22:09:29 ID:fd761ccf7 返信

            pz_linkcardテーブルの文字セットは「utf8」もしくは「utf8mb4」になっていないと想定通りの動きがされません。変更が出来れば「utf8mb4_unicode_ci」に変更してみることはできますか。

            すでに保存されたものは別の文字コードで保存されていると思われますので、Pzカード管理画面からいったん削除して再取得してみてください。

            • 名前: 投稿日:2017/07/02(日) 22:28:50 ID:8a64feec0 返信

              ありがとうございます。
              InstantWPのほうでpz_linkcardテーブルを「utf8mb4_unicode_ci」に変更し、すでにテストしている文章は削除して再度新規投稿をしてみたのですが、やはり文字化けしてしまっています。

              InstantWPではなく、XAMPPかMAMPでもう一度やってみようと思います。

              • 名前:ぽぽろん 投稿日:2017/07/02(日) 22:43:09 ID:fd761ccf7 返信

                こちらで再現する環境が無く、適切な助言ができずすいません。
                また何かありましたらおしらせください。

                • 名前: 投稿日:2017/07/03(月) 01:03:36 ID:78c280e88

                  いえ、とんでもないです。
                  MAMPを使ってWPをインストールし、ブログカードのテストをしてみましたら、文字化けせず表示することができました!
                  やはりおっしゃる通り、InstantWPの文字コード的なものが原因だったのかもしれません。
                  お手数おかけして申し訳ございませんでした。でもとてもありがたかったです。ぜひ使わせていただきたいと思います。

                • 名前:ぽぽろん 投稿日:2017/07/03(月) 01:05:21 ID:b6c68c0b5

                  報告ありがとうございます。InstantWPなどのローカル環境には興味がありますのでその内対応したりもするかも知れません。
                  また何か気づいた点などありましたらお気軽にどうぞよろしくお願いします。

    • 名前:ぽぽろん 投稿日:2017/07/05(水) 07:01:36 ID:cf31b4400 返信

      こちらでもInstantWPをインストールしてみて原因がだいたい分かりました。

      【原因】
      管理画面では文字数を区切って表示するときにhtmlentitiesという関数を使用しているのですが、この関数がutf-8で上手く動作してくれないのが原因でした。
      明示的にutf-8と指定すると動作するのですが似た関数のhtmlspecialcharsに変更したところ正しい表示になりました。

      【対応】
      InstantWPでも正しい表示になるように関数の差し替えを行いました。次の公開バージョンで修正されます。

      【備考】
      DBそのものには正しい値が入っており、管理画面での表示の問題だけでした。このため表示は化けていても使用していただいていても問題ありません。

      【詳細】
      こちらの記事で説明しました。
      https://popozure.info/20170705/11263

  2. 名前: 投稿日:2017/07/02(日) 19:41:08 ID:8a64feec0 返信

    初めまして、こんにちは。こちらのプラグインを使わせていただこうとインストールしました。プラグインのページからPz-LinkCardの管理 に行くと、タイトルや抜粋文が文字化けしてしまっています。「編集」で見てみるとちゃんと日本語になってるんですが…。
    解決策などありましたら、教えていただけないでしょうか?

    • 名前:ぽぽろん 投稿日:2017/07/02(日) 19:47:57 ID:fd761ccf7 返信

      綾さん、コメントありがとうございます。

      プラグインの管理画面などで表示される見出しなどは英語で作成されていて、翻訳ファイルを使用して日本語として表示される仕組みとなっていますが、言語設定などとかみあっていないのかもしれません。
      どんな感じで化けているのか実際の画面を見てみたいので、もしもTwitterアカウントがあれば、 @popo68k もしくは @popozure あてにDM(ダイレクトメッセージ)で画面写真などを送っていただけると助かります。

    • 名前:ぽぽろん 投稿日:2017/07/02(日) 22:12:01 ID:fd761ccf7 返信

      現在のところ、pz_linkcardのDBテーブルを作成するときに、強制的に「utf8」で作成せず、WordPressのDB設定の文字セットで作成するのは仕様となります。
      もしもPHPを直接編集することが出来るのであれば強制的にutf8でテーブルを作成するようにする変更箇所をお教えすることができると思います。