リンクをカード形式で表示するWordPressプラグイン「Pz-LinkCard」を公式プラグインディレクトリにて公開しています。
いつもの前置き
「まだテキストリンクつかってる?」
↓
「カード形式でリンクを表示するWordPressプラグインがあるよっ(^-^)o」
そんなわけで、外部リンクをカード形式で表示するWordPressプラグインです。
インストールとか使い方は、Pz-LkCのページをご覧くださいませ(^-^)o
変更したところ
タイトル、抜粋文取得の改善
リンク先のHTMLを取得して、metaタグを取得しています。
そこから OGP情報 やらを取得しているのですが、ダブルクォートと、区切りなしには対応していたのですが、シングルクォートに対応していませんでした(^-^;
やってることは、下記の記事にこっそり追記しました。
content=”” とか…!Σ(゚ロ゚)o゙
まさかの…
<meta property=”og:description” content=”” /> <meta name=”description” content=”リンク→カードなプラグイン Pz-LkC 更新しました” /> |
「まさかのOGPの概要文だけ空欄!Σ(゚ロ゚)o゙」
自分も含めて、テーマとかプラグインにまかせてOGP情報は作成されている方が多いと思うので、意識されているわけでは無いと思うのですが、まさかのOGPのdescriptionが空欄でした。
OGP情報を優先していたため、この場合、表示される抜粋文は空欄でした。
とりあえず、空欄のときは、name=”description” を概要として採用することにしました。
DBには空欄でキャッシュされています。そのため、「Pz カード管理」画面から、「抜粋文」順で並べて、空欄のカードを「削除」してみると、取り直せるかも知れません。
(metaタグで概要文が無い場合、結果は変わらず空欄のままです。)
パラメータでタイトルや抜粋文を指定した場合もHTMLタグを除去
ショートコードで囲まれた文字列をタイトルや抜粋文として採用する機能がありますが、このときにはHTMLタグの除去などをしていませんでした。
このため、文字数で区切った時にタグを途中で切ってしまい、「<br>」が途中で区切れたり。
こんなこともあるんだって知りました<b |
場合によっては、「<div>」とか「<script>」とか書かれてもそのまま表示していたり、「閉じ」までたどり着いていないとレイアウトが崩れたり。
カード表示の直前に、「HTMLタグの除去とか文字数の区切る処理」を追加しました。
DBキャッシュの前にも同じ処理をしているので、DBから取り出した場合は、何も起こらないのに同じ処理を通過します。
「抜け」を心配してのつくりなのですが、パラメータ指定されたときだけ除去しなおすように今後また見直します。
「カード管理」の画面のセキュリティを強化
「強化」というか、wp_nonce_field と check_admin_referer をコメントアウトしたままだったので、戻しました。
プラグインが扱えるログインユーザーが、自分のサイトのPzカード管理のキャッシュを削除するようなURLを踏まされたときに、何個かのキャッシュを削除できる可能性があった、という感じでしょうか。
ところで、カード管理画面、リンク先URLにリンクが設定されていなくて不便ですよね。
リンク設定そのものは簡単なのですが、リファラに色々載っちゃいそうなので、当面のあいだ、コピペでお願いします。
定型書式「Pzカード標準書式」を変更しました
青→白のグラデーションという感じで、カード上側が濃い青、下側が白でした。
これに合わせて、サイト情報の文字色は「白」だったのですが、「サイト情報」を「下側」に設定したときに、まったく見えなくなることに気付きました。
下側にしたとき、文字色が黒になります。(あ、設定値を採用するようにすれば良かった…次回こっそり直します)
設定画面の「サイト情報」項目を少し上の方に移動
デフォルト(標準設定)が「上側」なので、項目位置も「上側」に変更しました。
「区切り線」を追加
「記事内容(タイトルと抜粋文)」と、「サイト情報」の間に区切り線を入れられるようにしました。
特に「サイト情報」を下側にしている場合、抜粋文なんだかサイト名なんだか分かりづらい場合がありました。
「サイト情報」を「上側」に設定しているときに「区切り線」を表示させると、ちょっと位置が変ですが仕様です。
(「CSSが苦手」とも言う。)
抜粋文?概要文?
ところで自分でも気になっているのですが、Pz-LkCのことを書いていると、「抜粋文」と言ってみたり、「概要文」とか言ってみたり、単語に揺れがあります(^-^;
サイト側で指定されているのは「description」。「概説」とか「概要」という意味でしょうか。
WordPressでの記事は「content」、「内容」ですね。
それを抜粋して取得してきたものが「excerpt」。「抜粋」とか「引用」という意味です。
「description(概要)」として、記事を先頭から「excerpt(抜粋)」した文字列を指定することが多いと思います。
なので、持ってくる前の文字列を「概要文」、文字数とかで切り取って、キャッシュしたり表示したりするときの文字列を「抜粋文」と言っていたりします。
自分でもどっちだか分かんなくなってきて、まざってたりします。
んー、どっちかに統一しちゃいたいなぁ。
コメント