サイト内検索
Cocoonフォーラム
書き込みの前に以下の3点をご確認ください。
何を書き込んだら良いか分からない場合は、以下のテンプレートをコピペしてご利用ください。
不具合・カスタマイズ対象ページのURL:
相談内容:
不具合の発生手順:
解決のために試したこと:
※文字だけでは正しく伝わらない可能性があるため、スクショ画像の添付もお願いします。
※高速化設定をしている場合は無効にしてください。
環境情報:※↑こちらに「Cocoon設定 → テーマ情報」にある「環境情報」を貼り付けてください。
環境情報の取得方法はこちら。
→ https://wp-cocoon.com/theme-report/
高速化設定を無効にするにはこちら。
→ https://wp-cocoon.com/theme-trouble/
フォーラム利用ガイドリンク
- フォーラムガイドライン
- よくある質問と答え(FAQ)
- サポート対象外のケース
- 原因不明の不具合用トラブルシューティング
- トピックにHTMLを貼り付ける方法(推奨ツール:notepad.pw)
- 真っ白画面でのエラーメッセージの確認方法
- ブラウザ環境チェックツール
- Cocoonカスタマイズ依頼
フォーラム質問後、問題等が解決した場合は結果を書き込んでいただけると幸いです。同様の問題で調べている方には、結果が一番気になる部分となります。
トピックスターター 2024年6月29日 22:29
先日、「サブディレクトリ構成で、他のサブディレクトリへのリンクブログカードのサムネイルやタイトルが表示されない。」
と質問し、Cocoon修正版(2.7.4.8)を作っていただき回復したかと思いましたが、
一部のサブサブディレクトリから、他のサブディレクトリへのブログカードが内部ブログとして処理(internal-blogcard)されサムネイルやタイトルが表示されません。
諸事情で運用中のURLは出せませんが、
サブディレクトリ【A】: https://●●●.org/aaa/wordpress/
サブディレクトリ【B】: https://●●●.org/bbb/wordpress/
サブディレクトリ【C】: https://●●●.org/wordpress/
のようなサブディレクトリ構成で、
【A】から【B】:OK
【A】から【C】:OK
【B】から【A】:OK
【B】から【C】:OK
【C】から【A】:NG
【C】から【B】:NG
【質問】ですが、
サブディレクトリ構成で【C】のようなサブディレクトリはまずいのでしょうか?
それとも、他に問題があるのでしょうか?
宜しくお願いします。
2024年6月30日 01:41
先の以下のお問い合わせで、気づいたことがあります。
[解決済] サブディレクトリ構成で 他のサブディレクトリへのリンクブログカードが思うように表示されない。
https://wp-cocoon.com/community/postid/79753/
サブディレクトリ【A】:https ://●●●.org/aaa/wordpress/
サブディレクトリ【B】:https ://●●●.org/bbb/wordpress/
上記のように仰っていますが、これはインストールされていディレクトリで、URLではないみたいです。
ブログカードのリンク先のURLを見ると「/wordpress/」の部分がないです。
<a href="https://●●●.org/bbb/?p=8101" title="" class="blogcard-wrap internal-blogcard-wrap a-wrap cf">
つまり、「/bbb/」のサイトは、以下であるのだと思われます。
- WordPressアドレス:https ://●●●.org/bbb/wordpress/
- サイトアドレス :https ://●●●.org/bbb/
もし、今回の【C】がこれと同じ構成だとしたら、以下のような感じに。
- WordPressアドレス:https ://●●●.org/wordpress/
- サイトアドレス :https ://●●●.org/
これだと、【A】【B】が外部サイトと判定できないと思います。
(実際のURL=ドメインですので、ドメインを含むURLは、全て自サイト)
WordPressアドレス=サイトアドレスであれば、「/wordpress/」が含まれている分、URLが異なりますから、判定できると思いますけれど。
こういう構成で判定したいのなら、以下辺りに個別対応を入れるしかないのでは・・・。
(「https ://●●●.org/aaa/」「https ://●●●.org/bbb/」を含む場合はfalseにするような)
https://github.com/xserver-inc/cocoon/blob/1d6b6037481da45c511d267452fbbab783d45e2a/lib/blogcard-in.php#L24-L35
こういう構成にした場合、【C】のサイトに「ドメイン/aaa/」「ドメイン/bbb/」というURLが作られてしまう可能性はありますよね、システム的には。
(人間側がそういうことをしないように気をつけるのでしょうけれど)
わいひら reacted
トピックスターター 2024年6月30日 07:09
mk2 さま
ありがとうございます。
ご指摘のように
サブディレクトリ【A】は
WordPress アドレス: https://●●●.org/aaa/wordpress
サイトアドレス; https://●●●.org/aaa
サブディレクトリ【B】は
WordPress アドレス: https://●●●.org/bbb/wordpress
サイトアドレス; https://●●●.org/bbb
サブディレクトリ【C】は
WordPress アドレス: https://●●●.org/wordpress
サイトアドレス; https://●●●.org/
としています。
やはりこれが原因ですか?
2024年6月30日 07:28
nihonkaiさん
自サイトか外部サイトかを判断するのは、サイトアドレスです。
(それ以外にどうやって?)
自分のURLなのか、そうでないのか。
【C】からみれば、【A】【B】【C】すべてが自サイトと判断されてしまうと思います。
それを回避するには、先に書いたような個別にカスタマイズをしていただく必要があるのではないかと思われます。
只今スマホからですので、これくらいしか、書けないです。
わいひら reacted
トピックスターター 2024年6月30日 14:51
mk2 さま
ありがとうございます。
、以下辺りに個別対応を入れるしかないのでは・・・。
(「https ://●●●.org/aaa/」「https ://●●●.org/bbb/」を含む場合はfalseにするような)
https://github.com/xserver-inc/cocoon/blob/1d6b6037481da45c511d267452fbbab783d45e2a/lib/blogcard-in.php#L24-L35
参考にさせて頂きPHPを編集しましたが、スキル不足のため【A】【B】を内部サイトから外すことはできましたが、URLがリンクテキスト表示になるだけで、外部ブログカードとして表示することはできませんでした。
https://notepad.pw/share/jFVz1icDngmQ32fDJt2N
ありがとうございます。
この投稿は6か月前 2回ずつnihonkaiに変更されました
2024年6月30日 18:00
●原因
先述の通り。
親ディレクトリの一部として子A、Bが判定され、以下でカードにならない。
●対策案
添付頂いたコードの判定ですが、以下で行えばいいのでは?
わいひら reacted
トピックスターター 2024年6月30日 19:12
chu-ya さん
ありがとうございます。
●対策案
添付頂いたコードの判定ですが、以下で行えばいいのでは?
ご指定のPHPを編集し、【A】【B】を外部ブログカードとして表示できました。
https://notepad.pw/share/yIKqVFkiNta7lYiePjUV
ありがとうございました。
2024年6月30日 19:31
2024年6月30日 19:33
今回の問題、ttps://cocoon.jp/?p=123 形式のパーマリンクだと、外部リンクだったとしても、url_to_postid関数でポストIDが取得できることに原因があるっぽいです。
https://github.com/xserver-inc/cocoon/blob/11b0ec6abbd6da407110fc5e59fb9725a3274a8b/lib/blogcard-out.php#L17
外部リンクの場合は、url_to_postidは0を返すものと思っていました。実際は、パーマリンクによって異なっていたようです。
なので、?p=123 形式でないパーマリンクに設定すると、PHPをカスタマイズせずともたぶん大丈夫になるように思います。
URLからポストIDがわかるようにするなら ttps://cocoon.jp/archives/123 形式にするとか。
この投稿は6か月前ずつわいひらに変更されました
トピックスターター 2024年6月30日 21:05
chu-ya さん
わいひら さん
ありがとうございます。
chu-ya さん
たしかにExcelのような表現にしたら分かりやすいですね。
chu-ya さん
が書いておられるように、
親 子A 子B と言うような構成としています。
わいひら さん
?p=123 形式でないパーマリンクに設定すると、PHPをカスタマイズせずともたぶん大丈夫になるように思います。
URLからポストIDがわかるようにするなら ttps://cocoon.jp/archives/123 形式にするとか。
わいひらさん
が書かれておられるように、/?p=123 形式のパーマリンクにしています。
/archives/123 形式で試しましたが、PHPをカスタマイズせずとも正常に表示されました。
そもそも、このようなサブディレクトリ構成は推奨されないと言うことでしょうか?
この投稿は6か月前ずつnihonkaiに変更されました
2024年7月1日 19:50
nihonkaiさん
そもそも、このようなサブディレクトリ構成は推奨されないと言うことでしょうか?
何が正しいのかは、私も正直分かりません。
私は、サブディレクトリ形式では、運用したことがないです。
(サブドメイン形式にしています)
あくまでも、私の好みの問題ですけれど。
今回のようなケースであれば、私なら親もサブディレクトリ形式します。
理由は、先に書いた通りです。
こういう構成にした場合、【C】のサイトに「ドメイン/aaa/」「ドメイン/bbb/」というURLが作られてしまう可能性はありますよね、システム的には。
(人間側がそういうことをしないように気をつけるのでしょうけれど)
システム的に、同一のURLが作れてしまう構成にはしたくないというだけですけれど。
(パーマリンク設定に依るのかもしれないですけれど)
ディレクトリ構成自体は、サブディレクトリだろうとサブドメインだろうと同じです。
URLがどうなるのかが、問題なのかなと思います。
同一サーバーにインストールした場合、親ドメイン直下に親のものと、子のサブディレクトリが混在するのも好みではないです。
(URLではなく、サーバーのディレクトリ構成の話です。nihonkaiさんの場合は「wordpress」までありますから、そんなに混乱しないと思いますけれど)
あくまでも私見であり、私の好みの問題でしかないです。
1つの意見ということで。
わいひら reacted
2024年7月1日 23:18
そもそも、このようなサブディレクトリ構成は推奨されないと言うことでしょうか?
もちろんサイト構造は運営者の自由ではありますが、個人的には構造的にややこしくなる以上あまり好みではありません。
訪問記者からしても ttps://●●●.org/aaa というURLは ttps://●●●.org/ と同じWordPressで動いている同一サイトと勘違いされる方も多いかと思います。
問題の解決に至った場合には、トピック冒頭の「解決済み」をクリックしていただけますと幸いです。
また、有用な回答があった場合は返信右下にある「いいね!」もご活用ください。回答者の励みになります。
(CC BY-ND 2.1)準じていれば(リンクを貼っていただければ)転載も自由です。カスタマイズ記事を書く際にコード等をコピペ利用していただいて構いません。
フォーラムの使い方がよくわからない場合は、テストトピックで自由にテストしていただいて構いません。
最近の書き込みはこちら。
詳細なカスタマイズ依頼をするならこちら。