サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
Topic starter
2019年8月24日 12:02
カテゴリ編集ページに書いているショートコードが展開?されるようになった
の不具合修正を試すために、カテゴリー・タグ本文にショートコードを用いて表示させた際、ショートコードの前後に空の段落が入っていることに気づいたので、新たに不具合報告としてトピックを立ち上げさせていただきます。
スターショートコードを使用した例だと、添付画像のようになります。
この不具合が生じるということは、コンテンツ整形の際のフィルターフックの順序が誤っているのが問題かと思われます。
WordPress本体のフィルターフック'the_content'を参考に、同様の順序でフックを通すよう修正するのが手っ取り早いです。
また、カテゴリー・タグ本文ともに
$content = wpautop($content);
https://github.com/yhira/cocoon/blob/master/lib/content-category.php#L104
直接wpautop関数を通していますが、これもフックで処理する形にした方が今後問題が生じにくいと思います。
おそらく、wpautop関数よりも優先しなければならない処理も出てくるからです。
('the_content'で言えば、do_blocksなど)
2019年8月24日 19:04
ご連絡ありがとうございます。
すいません。
昨日しっかりとコードを見れてなかったようです。
以下のように修正しておきました。
https://github.com/yhira/cocoon/commit/aedb816094cac8451c5b6877d7db53bd9b577a29
Topic starter
2019年8月24日 20:50
確認しましたが、本トピックの修正は含まれていないようです。
カテゴリ編集ページに書いているショートコードが展開?されるようになった
の不具合とは別件なので、新たにトピックを立ち上げた次第です。
再度本トピックの内容を含めた確認と修正をよろしくお願いします。
ショートコードを使用して、カテゴリー・タグ本文を表示させたときのHTML(添付画像参照)をチェックすると分かりやすいかと思います。
edit reacted
2019年8月24日 22:51
新しいトピックを立ててくださったんだと思い込んでいました。
こちらのように修正してみました。
https://github.com/yhira/cocoon/commit/de4d331ec74c7d7d9bd107c994fd8b75d8c9bf31
Topic starter
2019年8月25日 00:07
修正ありがとうございます。
https://github.com/yhira/cocoon/commit/de4d331ec74c7d7d9bd107c994fd8b75d8c9bf31
これだとどれもpriorityは10なのですが、実行順はフックを書いた順にdo_shortcode→shortcode_unautop→wpautopとなってしまいます。
スターショートコードのようにシンプルなHTMLタグを出力するショートコードだといいのですが、人気記事一覧等のショートコードのように複雑なHTMLタグを出力する場合だと不具合が発生しています。
WordPress本体のフィルターフック'the_content'を参考に、同様の順序でフックを通すよう修正するのが手っ取り早いです。
https://github.com/WordPress/WordPress/blob/master/wp-includes/default-filters.php
https://elearn.jp/wpman/column/c20141022_01.html
他のフックとの兼ね合いで別の不具合が生じるのかもしれませんが、WordPressの'the_content'だとリンク先の順になっています。
あと、テンプレートショートコードでも同様の問題が発生しているようです。
https://github.com/yhira/cocoon/blob/master/lib/shortcodes.php#L176-L189
https://github.com/yhira/cocoon/blob/master/lib/page-func-text/func-text-func.php#L111-L121
wpautop→do_shortcodeとなっているので、こちらは間にshortcode_unautopを入れることで解決しそうではあります。
edit reacted
2019年8月25日 11:51
adとstarで問題なかったので、それしか試してませんでした。
こちらの修正で改善されたかなと思います。
https://github.com/yhira/cocoon/commit/4f53a050526bd75f67b19d68ac00e10a0d35ac03
テンプレートについても追加しておきました。
https://github.com/yhira/cocoon/commit/cb1aa1ba3b86e33bdac8a25ca824eb1afefa437d#diff-4c2f1d3242811de4edf30c49bea3fc45R186
2019年8月25日 19:55
ご確認ありがとうございます。
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。