このコンテンツを埋め込めませんでした。

2021-12-02 | diary

WordPressのブロックエディタGutenbergで「埋め込みURL」を使おうとすると、「このコンテンツを埋め込めませんでした。」と表示されて、埋め込みに失敗することがあります。

原因は、以下の公式サイトに説明があります。
https://ja.wordpress.org/support/article/embeds/#%e3%81%a9%e3%82%93%e3%81%aa-url-%e3%81%a7%e3%82%82%e3%81%93%e3%81%ae%e6%a9%9f%e8%83%bd%e3%82%92%e4%bd%bf%e3%81%88%e3%81%be%e3%81%99%e3%81%8b

デフォルトでは限られたサイトからの URL のみに有効です。安全対策のため、WordPress は内部のホワイトリストに一致する URL のみを埋め込みます。

さらにその続きに対応方法があります。

oEmbed 対応サイト
サイトが oEmbed に対応している場合は wp_oembed_add_provider() を呼び出し、そのサイトの URL 形式を内部のホワイトリストに追加します。

oEmbed 非対応サイト
wp_embed_register_handler() を使ってハンドラーを登録します。その後、HTML を生成するコールバック関数が必要になります。