サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
Topic starter
2021年4月10日 07:08
Amazon商品リンクコードにdescオプションがありますが、その中に「_blank」の要素が入ると、descオプションに入れていた文字がすべて消えてしまいます。
今までは表示されていたような気がするのですが、テーマ側もしくはAmazon API側で、仕様変更でもあったのでしょうか。
たとえば、以下のようなショートコードだと、descオプション内の文字が消えてしまいます。
[amazon asin="B087C4VWDQ" kw="BUFFALO WiFi 無線LAN ルーター WSR-2533DHPL2/NB" desc="<a rel="nofollow noopener sponsored" href='https://www.buffalo.jp/product/detail/wsr-2533dhpl2_nb.html' target='_blank'>公式</a>サイト"]
次のように、「target='blank'」を外した状態だと「公式サイト」のリンクが表示されます。
[amazon asin="B087C4VWDQ" kw="BUFFALO WiFi 無線LAN ルーター WSR-2533DHPL2/NB" desc="<a rel='nofollow noopener sponsored' href='https://www.buffalo.jp/product/detail/wsr-2533dhpl2_nb.html'>公式</a>サイト"]
Cocoon 2.2.8.7を使っていますが、バージョンを少し戻しても変わらず。
「_blank」が入っていても、ショートコード内に入れた文字が消えないようにできますでしょうか。
This topic was modified 4年前 by ジャム君
2021年4月11日 19:29
今までは表示されていたような気がするのですが、テーマ側もしくはAmazon API側で、仕様変更でもあったのでしょうか。
以前表示されていたのであれば、WordPress側に仕様変更があったのかもしれません。
テーマ側では最近特にAmazonショートコードに変更は加えていないです。
また、descオプションはAmazon APIとは関係ない処理だったと思うので、APIでもないような気がします。
Topic starter
2021年4月11日 19:53
@yhira さん
確かに、WordPress側での仕様変更の影響を受けた可能性はありますね。
WordPress 5.6リリースあたりでは動いていたような記憶があるので、マイナーアップグレードされて現在使っているWordPress 5.6.2やWordPress 5.7では、何らかの影響を受けているのかもしれないです。
バージョン違いの環境で動作してくれるのか、別途環境構築して検証してみます。
Topic starter
2021年4月11日 21:24
WordPress 5.4まで下げてみたのですが、状況は変わらずでした。
---------------------------------------------- サイト名:test サイトURL: https://cocoon-wp.oyashirosama.xyz ホームURL: https://cocoon-wp.oyashirosama.xyz コンテンツURL:/wp-content インクルードURL:/wp-includes/ テンプレートURL:/wp-content/themes/cocoon-master スタイルシートURL:/wp-content/themes/cocoon-child-master 親テーマスタイル:/wp-content/themes/cocoon-master/style.css 子テーマスタイル:/wp-content/themes/cocoon-child-master/style.css WordPressバージョン:5.4 PHPバージョン:7.4.13 ブラウザ:Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.114 Safari/537.36 サーバーソフト:Apache サーバープロトコル:HTTP/1.1 言語:ja-JP,ja;q=0.9,en-US;q=0.8,en;q=0.7 ---------------------------------------------- テーマ名:Cocoon バージョン:2.2.8.7 カテゴリ数:1 タグ数:0 ユーザー数:1 ---------------------------------------------- 子テーマ名:Cocoon Child バージョン:1.1.2 style.cssサイズ:845バイト functions.phpサイズ:203バイト ---------------------------------------------- Gutenberg:0 AMP:0 PWA:0 Font Awesome:4 Auto Post Thumbnail:0 Retina:0 ホームイメージ:/wp-content/themes/cocoon-master/screenshot.jpg ---------------------------------------------- ブラウザキャッシュ有効化:0 HTML縮小化:0 CSS縮小化:0 JavaScript縮小化:0 Lazy Load:0 WEBフォントLazy Load:0 ---------------------------------------------- 利用中のプラグイン: WP Multibyte Patch 2.9 ----------------------------------------------
5.7→5.5.3→5.4という下げ方をしたので、データベース的にか新しいバージョンの影響が残っている可能性もなくはないのですが、「_blank」が入っているものに関しては、desc内の文字が消えてしまうようです。
「_blank」だからいけないのかと気になった「_self」を試したのですが、こちらも表示不能。
どうやら「target」属性があるとdesc内が消えてしまう、謎挙動でした。
2021年4月12日 19:19
該当部分のコードを見ても2020年の6月6日以降は変更してないっぽいです。
https://github.com/yhira/cocoon/commits/1b758b637791df6dfd5fedb12ce6d7f66144bc41/lib/shortcodes-amazon.php
中身を出力すると、もう既にこの時点でおかしなことになっているようです。
https://github.com/yhira/cocoon/blob/424b2a2371becedc85556c506f6478a55ac8e1e0/lib/shortcodes-amazon.php#L409
詳しくは見てないけど基本的に、ショートコード内にタグがあるとHTMLエンコードされるっぽい。
targetオプションだけなぜあこんなふうになるのかわからないけど。
ジャム君 reacted
Topic starter
2021年4月12日 20:08
@yhira さん
10か月ほど前から、Cocoonの挙動としては変わらないはずですか。
もしかすると、本番環境で使っているプラグインと競合して意図せず表示に成功しており、プラグインのアップデートともに、いつの間にか使えなくなっていたということもありそうですね。
別タブ表示ができればいいのですが、target属性部分さえ削除しておけば、ほぼ意図している動作はしてくれますので、いったん消して表示だけでもさせるのが正解かもしれませんね。
表示されないのは、実にもったいないですし……
お忙しい中確認いただき、ありがとうございました。
わいひら reacted
2021年4月13日 19:02
デフォルトでオプションの値がHTMLエスケープされているので、WordPress的にはオプションでタグを利用するのはあまり行儀の良いものではないのかもしれません(Cocoonではエスケープを元に戻しているだけ)。
ジャム君 reacted
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。