grayishスキン適用中

Cocoonフォーラム

サイト内検索
書き込みの前に以下の3点をご確認ください。
  1. 1つのトピックにつき1つの質問を書き込んでください
  2. 不具合・カスタマイズ対象ページのURLを提示高速化を無効にしてください
  3. 該当部分のキャプチャ・環境情報とともに書き込んでいただけると助かります

何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。

不具合・カスタマイズ対象ページのURL:

相談内容:

不具合の発生手順:

解決のために試したこと:

※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:

※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。

環境情報の取得方法はこちら。
https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
https://wp-cocoon.com/theme-trouble/

フォーラム利用ガイドリンク

  1. フォーラムガイドライン
  2. よくある質問と答え(FAQ)
  3. サポート対象外のケース
  4. 原因不明の不具合用トラブルシューティング
  5. トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw
  6. 真っ白画面でのエラーメッセージの確認方法
  7. ブラウザ環境チェックツール
  8. Cocoonカスタマイズ依頼

フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。

カテゴリー・タグ本文のショートコード前...
 
共有:
通知
すべてクリア

[クローズ] カテゴリー・タグ本文のショートコード前後に空の段落が入る不具合

8 投稿
2 ユーザー
6 Likes
1,164 表示
ろこ
(@lococo)
Prominent Member Registered
結合: 6年前
投稿: 830
Topic starter  

カテゴリ編集ページに書いているショートコードが展開?されるようになった
の不具合修正を試すために、カテゴリー・タグ本文にショートコードを用いて表示させた際、ショートコードの前後に空の段落が入っていることに気づいたので、新たに不具合報告としてトピックを立ち上げさせていただきます。

スターショートコードを使用した例だと、添付画像のようになります。
この不具合が生じるということは、コンテンツ整形の際のフィルターフックの順序が誤っているのが問題かと思われます。

WordPress本体のフィルターフック'the_content'を参考に、同様の順序でフックを通すよう修正するのが手っ取り早いです。
また、カテゴリー・タグ本文ともに

$content = wpautop($content);

https://github.com/yhira/cocoon/blob/master/lib/content-category.php#L104

直接wpautop関数を通していますが、これもフックで処理する形にした方が今後問題が生じにくいと思います。
おそらく、wpautop関数よりも優先しなければならない処理も出てくるからです。
'the_content'で言えば、do_blocksなど


   
edit and わいひら reacted
わいひら
(@yhira)
Illustrious Member Admin
結合: 6年前
投稿: 16109
 

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

すいません。
昨日しっかりとコードを見れてなかったようです。
以下のように修正しておきました。
https://github.com/yhira/cocoon/commit/aedb816094cac8451c5b6877d7db53bd9b577a29


   
ろこ
(@lococo)
Prominent Member Registered
結合: 6年前
投稿: 830
Topic starter  

確認しましたが、本トピックの修正は含まれていないようです。
カテゴリ編集ページに書いているショートコードが展開?されるようになった
の不具合とは別件なので、新たにトピックを立ち上げた次第です。

再度本トピックの内容を含めた確認と修正をよろしくお願いします。
ショートコードを使用して、カテゴリー・タグ本文を表示させたときのHTML(添付画像参照)をチェックすると分かりやすいかと思います。

 


   
edit reacted
わいひら
(@yhira)
Illustrious Member Admin
結合: 6年前
投稿: 16109
 

新しいトピックを立ててくださったんだと思い込んでいました。
こちらのように修正してみました。
https://github.com/yhira/cocoon/commit/de4d331ec74c7d7d9bd107c994fd8b75d8c9bf31


   
ろこ
(@lococo)
Prominent Member Registered
結合: 6年前
投稿: 830
Topic starter  

修正ありがとうございます。

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
わいひら
(@yhira)
Illustrious Member Admin
結合: 6年前
投稿: 16109
 

adとstarで問題なかったので、それしか試してませんでした。
こちらの修正で改善されたかなと思います。
https://github.com/yhira/cocoon/commit/4f53a050526bd75f67b19d68ac00e10a0d35ac03

テンプレートについても追加しておきました。
https://github.com/yhira/cocoon/commit/cb1aa1ba3b86e33bdac8a25ca824eb1afefa437d#diff-4c2f1d3242811de4edf30c49bea3fc45R186


   
ろこ
(@lococo)
Prominent Member Registered
結合: 6年前
投稿: 830
Topic starter  

確認しました。
修正ありがとうございます。


   
edit and わいひら reacted
わいひら
(@yhira)
Illustrious Member Admin
結合: 6年前
投稿: 16109
 

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


   
共有:

問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。

また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。

「いいね!」機能はフォーラム登録者のみが利用できる機能です。

CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。

フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。

最近の書き込みはこちら。

詳細なカスタマイズ依頼をするならこちら。

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