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カスタマイズ依頼

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

FAQブロックで作成された構造化データ...
 
共有:
通知
すべてクリア

[解決済] FAQブロックで作成された構造化データ(JSON-LD)の内容が重複する

15 投稿
3 ユーザー
8 Likes
624 表示
tekuto
(@tekuto)
Active Member Registered
結合: 5か月前
投稿: 5
Topic starter  

お世話になっております。

 

特典機能のFAQブロックで作られた構造化データを確認していたところ、同じコンテンツが3回表示されるようでした。

 

▼ FAQの構造化データ

<script type="application/ld+json">
{
	"@context": "https://schema.org",
	"@type": "FAQPage",
	"mainEntity": [
		{
			"@type": "Question",
			"name": "質問1",
			"acceptedAnswer": {
				"@type": "Answer",
				"text": "<p>質問1の回答</p>"
			}
		},
		{
			"@type": "Question",
			"name": "質問1",
			"acceptedAnswer": {
				"@type": "Answer",
				"text": "<p>質問1の回答</p>"
			}
		},
		{
			"@type": "Question",
			"name": "質問1",
			"acceptedAnswer": {
				"@type": "Answer",
				"text": "<p>質問1の回答</p>"
			}
		}
	]
}
</script>

 

▼記事本文

<!-- wp:cocoon-blocks/faq {"question":"質問1"} -->
<div class="wp-block-cocoon-blocks-faq faq-wrap blank-box block-box"><dl class="faq"><dt class="faq-question faq-item"><div class="faq-question-label faq-item-label">Q</div><div class="faq-question-content faq-item-content">質問1</div></dt><dd class="faq-answer faq-item"><div class="faq-answer-label faq-item-label">A</div><div class="faq-answer-content faq-item-content"><!-- wp:paragraph -->
<p>質問1の回答</p>
<!-- /wp:paragraph --></div></dd></dl></div>
<!-- /wp:cocoon-blocks/faq -->

 

・8/21に寄付特典機能を利用し始めた

・8/21にFAQのアコーディオン機能のためにバージョンアップした

という状況のため、もとから起こっていたり、自分だけ発生しているかはわからないのですが、

似たような事象や解決方法がありましたら教えていただきたいです。

 

---

 

以下、サーバー情報です。

 

----------------------------------------------
サイト名:xxx
サイトURL:xxx
ホームURL:xxx
コンテンツ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
スキン:/wp-content/themes/cocoon-master/skins/skin-ganchan03/style.css
WordPressバージョン:6.0.1
PHPバージョン:7.4.27
ブラウザ:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/104.0.0.0 Safari/537.36
サーバーソフト:Apache/2.4.52 (Unix) OpenSSL/1.1.1n
サーバープロトコル:HTTP/1.1
エンコーディング:gzip, deflate, br
言語:ja,en-US;q=0.9,en;q=0.8
----------------------------------------------
テーマ名:Cocoon
バージョン:2.4.8.3
カテゴリ数:7
タグ数:20
ユーザー数:1
----------------------------------------------
子テーマ名:Cocoon Child
バージョン:1.1.3
style.cssサイズ:2523バイト
functions.phpサイズ:1699バイト
----------------------------------------------
Gutenberg:1
AMP:0
PWA:0
Font Awesome:5
Auto Post Thumbnail:0
Retina:0
ホームイメージ:/wp-content/uploads/2022/01/ogp-img.jpg
----------------------------------------------
ブラウザキャッシュ有効化:0
HTML縮小化:1
CSS縮小化:0
JavaScript縮小化:1
Lazy Load:1
WEBフォントLazy Load:0
----------------------------------------------
利用中のプラグイン:
Admin Menu Editor 1.10.2
All-in-One WP Migration 7.62
EWWW Image Optimizer 6.6.0
Google XML Sitemaps 4.1.4
Pochipp 1.8.1
Post Type Switcher 3.2.1
Search Regex 2.4.1
Simply Static 2.1.5.8
WPFront Notification Bar 3.2.0
WPS Hide Login 1.9.6
----------------------------------------------

 

 


   
引用
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 2年前
投稿: 4666
 

tekutoさん

ご提示いただいたソースを、私のローカル環境に貼り付けてみました。

 
 
再現はしないようです。
 
 
Cocoonのバージョンは、同じく2.4.8.3です。
 
 
 
トラブルシューティングの基本的なことを、まずはお試しいただくのが良い気はします。
 
  • プラグインを全無効化すると、変化があるのか
  • それでもダメなら、更に親テーマにしてみるとどうなるのか
 

   
わいひら reacted
返信引用
tekuto
(@tekuto)
Active Member Registered
結合: 5か月前
投稿: 5
Topic starter  

mk2さん

 

早速確認していただきありがとうございます。

 

他のプラグインやサーバー設定、カスタマイズが悪さしてないか切り分けしてみます。

 

(結果はのちほど記載します)


   
返信引用
tekuto
(@tekuto)
Active Member Registered
結合: 5か月前
投稿: 5
Topic starter  

検証結果の共有です。

 

## 問題が再現しなかったケース

・新しいまっさらなサーバーでは再現しなかった

 

## 問題が再現したケース

(すべてこちらのサーバーで確認しました)

・全プラグインを無効化

・cocoonの再インストール

・親テーマを有効化

・テーマ設定のリセット

 

-----

 

ログを仕込んで挙動を確認していた感じでは、

一回の記事ページ表示で、cocoon_add_faqの関数 が3回実行されていたため、同じ値が重複しているようでした。

 

そのため、こちらの修正を加えると解消しました。

https://github.com/yhira/cocoon/pull/69

 

-----

 

もしなにか原因になりそうなものがありましたらご教示頂けますと幸いです。

 


   
わいひら reacted
返信引用
わいひら
(@yhira)
Illustrious Member Admin
結合: 5年前
投稿: 14315
 

僕の環境でも不具合は確認できませんでした。
ただプルリクエストにあるようなチェックが追加されていた方が確実かと思うのでマージしておきました。
不具合が再任しない環境でテストしてみても、出力に問題はなかったです。
------------------------------------------------
https://github.com/yhira/cocoon
開発中の最新ファイルをダウンロードする場合は、上記ページのダウンロードボタンからzipファイルをダウンロードしてください。

WordPressでの手動アップデート方法はこちら
https://wp-cocoon.com/manual-update-of-cocoon-theme/
------------------------------------------------
今回自前の環境で不具合が再現されなかったので、自分では原因がわからなかったかと思います。
修正コードをいただきありがとうございます!


   
返信引用
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 2年前
投稿: 4666
 

わいひらさん

私のローカル環境に、「FAQ(アコーディオン)」を追加した時に確認した際のものが残っていましたので、確認しました。

どうも不具合が起きているように見えます。
(複数FAQブロックがある場合、1つめしかJSON-LDに出てこない)

 
 
私の環境だけの可能性もあると思います。
(バタバタしていますので、環境的に変なことをしているかも・・・)
 
ソースコードを添付いたしますので、ご確認いただけますでしょうか。
 
 
tekutoさんにご提示いただいた、FAQブロックが1つだけの場合は、問題なかったです。

   
わいひら reacted
返信引用
わいひら
(@yhira)
Illustrious Member Admin
結合: 5年前
投稿: 14315
 

ご確認いただきありがとうございます!
不具合を確認しました。すいません。取り急ぎ元に戻しておきました ? 


   
返信引用
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 2年前
投稿: 4666
 

私のテストしたものは、「FAQ(アコーディオン)」の追加の時のものですから・・・。

いろいろと億劫だったので「Question」のところをすべて「質問」と同じにしてしまっています。
だから、今回のようなことが起きた・・・ということのような気がします。

現実的には、同じものは複数入らないと考えることもできそうな気はします。

そこをどう考えるべきかが、悩ましいです。
(システム的には起こってしまうという状態ですし。)

 

そもそも最初の事象(お問い合わせの事象)が、なぜ環境の違いで起きてしまうのか・・・というところも、良く分からず悩ましいですが。


   
わいひら reacted
返信引用
わいひら
(@yhira)
Illustrious Member Admin
結合: 5年前
投稿: 14315
 

やっぱ、不具合環境を再現しないと確かなことはわからないかもしれませんね。
不具合環境では、同じFAQがなぜ3回なのかも謎ですし。


   
返信引用
tekuto
(@tekuto)
Active Member Registered
結合: 5か月前
投稿: 5
Topic starter  

こちらに気になる点を記載したのですが、

ログを仕込んで挙動を確認していた感じでは、

一回の記事ページ表示で、cocoon_add_faqの関数 が3回実行されていたため、同じ値が重複しているようでした。

wordpressの仕組みとして、一度のページアクセスで、テーマのfunctions.phpが何度か実行される状況・可能性はありますかね...?

(軽く調べた感じですとajaxなどで起こり得る? 参考

ウィジェットやメニューの設定に依存してるとか。

This post was modified 5か月前 2回 by tekuto

   
返信引用
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 2年前
投稿: 4666
 

WordPressやPHPのこういう仕組みのことは疎いのですが・・・。

「functions.phpが読み込まれる」
「functions.phpが実行される」
(参考のものは読み込まれるのような)

これは、同じ意味でしょうか。
(読み込む、メモリに展開する…?)

また、以下のようにお書きになっていますが。

投稿者:: @tekuto

functions.phpが何度か実行される

fuctinos.phpの「cocoon_add_faq関数」が何度も実行されると同義なのでしょうか。
(functions.phpは、関数の集まりの理解でいるのですが、関数の実行とfunctions.phpの実行・読み込みは同義なのでしょうか。)

 

ロジックを無視して、関数が実行されるということなのでしょうか。
ロジックに何らかの考慮漏れ、不具合があり、複数回実行されるということであれば理解し易いですが・・・。

 

念のため、私のサーバーの環境でも試してみましたが、不具合は発生しませんでした。

 

どうすれば再現するのか。
それが分かれば解決の糸口になる可能性があると思います。

tekutoさんの環境では

投稿者:: @tekuto

## 問題が再現しなかったケース

・新しいまっさらなサーバーでは再現しなかった

上記のような状態のようですが、不具合が発生する環境と、何か違いがあるのでしょうか。
(tekutoさんの環境でも、不具合が発生する環境・発生しない環境があるのは、なぜなのでしょう。)

tekutoさん以外の方が再現するにはどうすれば良いのか。
ここがポイントな気はします。

 

理解が浅いため、変なことを言っていたら申し訳ないです。


   
わいひら reacted
返信引用
mk2
(@mk2_mk2)
Illustrious Member Moderator
結合: 2年前
投稿: 4666
 

ふと思ったのですが。

投稿者:: @yhira

不具合環境では、同じFAQがなぜ3回なのかも謎ですし。

わいひらさんも仰っているように、なぜ3回なのでしょうね。
毎回3回なのでしょうか。

例えばFAQブロックが複数ある場合は、どうなるのでしょうか。

FAQブロックが2つなら、JSON-LDは6つ?
FAQブロックが3つなら、JSON-LDは9つ?

残念ながら、今のところ他の環境で再現しませんので、不具合の起きる環境で、確認していくしかない気はするのですよね。

 

スマホからですし、こんな時間ですので、この辺で。

他の環境でも、再現したいところです。


   
わいひら reacted
返信引用
わいひら
(@yhira)
Illustrious Member Admin
結合: 5年前
投稿: 14315
 
投稿者:: @tekuto

wordpressの仕組みとして、一度のページアクセスで、テーマのfunctions.phpが何度か実行される状況・可能性はありますかね...?

一般的な使用方法であればそういったことはないように思います。

投稿者:: @tekuto

ウィジェットやメニューの設定に依存してるとか。

これがわかれば不具合環境を再現できるのかもしれませんが、やっぱり再現方法がわからないので何とも言えません…。


   
tekuto reacted
返信引用
tekuto
(@tekuto)
Active Member Registered
結合: 5か月前
投稿: 5
Topic starter  
投稿者:: @mk2_mk2

tekutoさんの環境では

投稿者:: @tekuto

## 問題が再現しなかったケース

・新しいまっさらなサーバーでは再現しなかった

上記のような状態のようですが、不具合が発生する環境と、何か違いがあるのでしょうか。
(tekutoさんの環境でも、不具合が発生する環境・発生しない環境があるのは、なぜなのでしょう。)

AWSのlightsailを使って運用しています。

実際の記事が入っているサーバーでは再現して、

新規で立てたばかりのサーバーにcocoon設定した状態では再現しなかった

という状況でした。

---

投稿者:: @mk2_mk2

例えばFAQブロックが複数ある場合は、どうなるのでしょうか。

FAQブロックが2つなら、JSON-LDは6つ?
FAQブロックが3つなら、JSON-LDは9つ?

そのとおりです。

最初に気づいたときはFAQブロックが5個あったので、JSON-LDは15個になっていました。

---

しばらく調査や切り分けする時間が取れなさそうなので、

一旦クローズさせてもらおうかと思います。

 

mk2さん、わいひらさん、お忙しい中ご協力いただきありがとうございました!

 

(発生するのが自分だけのようなので、直接ソース変更して回避します)

This post was modified 5か月前 by tekuto

   
返信引用
わいひら
(@yhira)
Illustrious Member Admin
結合: 5年前
投稿: 14315
 

AWSでそういったことが手軽にできるのかわかりませんが、AWSのまっさらなスペースにCocoonをインストールしてデフォルト状態だとどうなるんだろうと思いました。
通常こういうのは、プラグインが悪さをしていたりする可能性が高いのですが、プラグインをすべて停止しても改善されなかったようですし。こうやってまでも再現したから独自カスタマイズが原因ではない。だとしたら、次はサーバの可能性も…と思いました。


   
tekuto reacted
返信引用
共有:

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

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

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

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

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

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

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

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