-
投稿者投稿
-
2024年9月2日 8:26 AM #141382
とりあえず管理画面をみた範囲で。
ブログカードの仕組みは、
– URL が貼られる
– 次の URL にリクエストを送る(下記は YouTube のチャンネルの URL を貼り付けた場合の例)
https://livingskape.jkdecor.com/wp-json/oembed/1.0/proxy?url=https%3A%2F%2Fwww.youtube.com%2F%40BingJapan&_locale=user
– ブログカードのもとになるデータが生成されて返ってくる
– それをもとにブログカードを表示するとなっています。このリクエストがなぜか404になってしまうみたいです。
Snow Monkey 公式サイトでは正しくデータが返ってくるので、今時点で怪しいなと思うのはセキュリティプラグインやサーバー側のセキュリティ機能で REST API が制限されている、とか、
.htaccess
に独自のリライトルールを追加している、が怪しいかなと感じました。もしセキュリティプラグインを使っていたり、サーバー側のセキュリティ機能を有効化している場合はそれを停止してみてください。
また、.htaccess
を独自にいじっているようであれば、その内容を教えてください。♥ 0いいねをした人: 居ません2024年9月2日 10:02 AM #141385ありがとうございます!お忙しい中調査頂き申し訳ありません!
私自身がセキュリティの何かをいじる、もしくは何かを書き換えたりなど高度なことはまったくできないので、何かのセキュリティ系プラグインが悪さをしている可能性で、一度調べてみます。
ただ、ブログ立ち上げ当初に入れたセキュリティプラグイン以外は入れていないはずなので、怪しそうなものを全部停止してみます!
♥ 0いいねをした人: 居ません2024年9月2日 10:54 AM #141391キタジマさま
今すべてのプラグインを停止にして試してみたのですが
状況に変化はありませんでした。また、サーバー側のセキュリティ設定を見ると
REST APIアクセス制限がONになっていたのでOFFにしましたが変わらず。
上記4つも全部OFFにしてみましたがこちらも変わらずでした。
.htaccess については特に何もいじっていないのですが
このコードをここに貼っていいのか分からなかったので
チャットの方にお送りします。先ほどリンクカードが表示されるか改めて試しましたが
私のブログ記事をコピペすると(サブディレクトリのサイトも含め)空白になり、
外部サイトをコピペすると「このコンテンツは埋め込めませんでした」になりました。他に何か考えられることはありますでしょうか?
♥ 0いいねをした人: 居ません2024年9月2日 3:58 PM #141402ちょっと下記をやってみてほしいです!
snow-monkey/vendor/inc2734/wp-oembed-blog-card/src/Bootstrap.php
のprotected function _is_block_embed_rendering_request() { $reuest_uri = filter_input( INPUT_SERVER, 'REQUEST_URI' );
を
protected function _is_block_embed_rendering_request() { $reuest_uri = filter_input( INPUT_SERVER, 'REQUEST_URI' ); if ( ! $reuest_uri ) { $reuest_uri = $_SERVER['REQUEST_URI']; }
に変更
♥ 0いいねをした人: 居ません2024年9月2日 4:13 PM #141403キタジマさま!!
神様!表示されました!!!!!!
ありがとうございます涙一体何が原因だったのでしょうか…?
♥ 0いいねをした人: 居ません2024年9月3日 9:19 AM #141411まず前提として、
– 埋め込みに失敗しました
– Snow Monkey 公式サイトトップページのブログカードのレイアウトが編集画面で崩れるについては、WordPress のデフォルトの挙動でした。
その上で、Snow Monkey は
– WordPress がブログカードとして表示できないもの(つまり↑であげたもの)
– WordPRess がブログカードとして表示するもののそれぞれについて、それぞれに別々の処理をして、結果としてどちらも同じデザインのブログカードを表示する、ということをやっています。さらに、ブログカードの表示処理は実際のページと編集画面とはまた別の処理になっていて、今回は編集画面用の処理に不具合があったことが原因でした。
編集画面用の処理は、まずそれがブログカードにするかどうかを判定する必要があって、その判定処理が
$request_uri = filter_input( INPUT_SERVER, 'REQUEST_URI' ); if ( ! $request_uri ) { return false; }
の部分でした。で、サーバーの環境によって
filter_input( INPUT_SERVER, 'REQUEST_URI' )
という書き方ではデータがとれないことがあるみたいで、そういう環境用にif ( ! $request_uri ) { $request_uri = esc_html( wp_unslash( $_SERVER['REQUEST_URI'] ?? '' ) ); }
という処理を追加しました。これでより多くの環境で正しく条件判定ができるようになり、JKDECOR さんのサイトでもちゃんと表示するようになった、ということになります。
Snow Monkey v27.0.2 としてリリースしているのでアップデートして改めて確認をお願いします!
♥ 0いいねをした人: 居ません2024年9月3日 10:37 AM #141417 -
投稿者投稿
- トピック「リンクカードが編集画面で表示されなくなった」には新しい返信をつけることはできません。