web-dev-qa-db-ja.com

InstagramのURLはoEmbedに変換されます

私はこれに8つのInstagram URLを持っています post のうち3つはembed/iframeに変換されません。

私はグーテンベルクのInstagram埋め込みブログを使用してURLを追加しています。 https://blog.wwf.sg/ocean/2018/11/netflix-documentaries-our-planet-okja-dogs/#

適切にレンダリングされる他のInstagramブロックと同じですが、 https://www.instagram.com/p/BqDzw0CF3pC/ の場合、クラシックエディターにブロックコードが表示されます。URLを返すだけです。

<!-- wp:core-embed/instagram {"url":"https://www.instagram.com/p/BqDzw0CF3pC/","type":"rich","providerNameSlug":"instagram","className":""} -->
<figure class="wp-block-embed-instagram wp-block-embed is-type-rich is-provider-instagram">
  <div class="wp-block-embed__wrapper">
    https://www.instagram.com/p/BqDzw0CF3pC/
</div>
</figure>
<!-- /wp:core-embed/instagram -->

私はショートコードを使ってみましたが、それは同じ結果であり、以下の3つのInstagramの投稿だけがレンダリングされません。

[embed]https://www.instagram.com/p/BqDzw0CF3pC/[/embed]

この奇妙な問題のデバッグについてサポートが必要です

1
Manoj H L

理解した。

埋め込みショートコードは、md5ハッシュを使用してoemebdデータをポストメタとして保存します。

wp-includes/class-wp-embed.php

// Check for a cached result (stored in the post meta)
$key_suffix = md5( $url . serialize( $attr ) );
$cachekey = '_oembed_' . $key_suffix;
$cachekey_time = '_oembed_time_' . $key_suffix;

また、1日後にのみ新しいデータを取得するキャッシュメカニズムがあります。

投稿メタを削除したところ、動き始めました。

2
Manoj H L