如何自动搜索我的整个站点,以查找使用oEmed嵌入的任何内容?

时间:2020-10-21 作者:cag8f

我如何在我的网站上的所有页面/帖子中自动搜索使用oEmbed嵌入的任何内容(最好是Facebook/Instagram内容)?

我问的原因是this WPBeginner post 表示10月24日,所有嵌入到使用oEmbed的网站上的Facebook或Instagram内容都将被弃用,这些内容将(略微)被破坏。我想首先确定我的网站上有多少oEmbed内容。我的网站有大量的页面/帖子(其他人添加的内容),因此手动搜索每个页面/帖子会有点乏味。

我可能需要进行数据库搜索吗?还是对所有文件进行文本搜索?

仅供参考,我的网站使用的是经过深思熟虑的经典编辑器,而不是古腾堡。

谢谢

1 个回复
最合适的回答,由SO网友:cag8f 整理而成

如果有人想知道答案,我可以在别处找到。如果在数据库上运行此SQL查询:

SELECT * FROM wp_postmeta WHERE (meta_value LIKE \'%facebook%\') OR (meta_value LIKE \'%instagram%\')

搜索结果将部分包含所有包含FB/IG嵌入内容的帖子列表。您可能需要更改前缀wp_ 到任何与数据库匹配的前缀(我必须)。您还可能需要在查询中指定数据库名称。我测试了这个查询,它确实像广告中所说的那样工作。我还被告知,这个SQL查询可能只包含所有包含FB/IG oEmbed内容的帖子列表(但我还没有测试):

SELECT * FROM wp_postmeta WHERE (meta_value LIKE \'%fb-root%\') OR (meta_value LIKE \'%instagram-media%\')

最后一件事是,SQL查询结果表明,我的网站有一篇帖子包含FB oEmbed内容。但当我打开那篇文章时,它没有包含任何丰富的嵌入内容(即this article, e、 漂亮的图像、漂亮的图标、漂亮的文本格式等等)页面上所有的内容都是指向Facebook页面的标准链接(screenshot). 因此,我没有采取任何措施来修复此问题——根据问题的描述,此特定内容将不受影响。

看见this post 有关更多信息,请访问WordPress论坛。

相关推荐

我可以使用wp_oembed_get来检测有效的可嵌入链接吗?或者有更好的方法吗?

我正在寻找一种有效的方法来检测用户输入是否是有效的嵌入链接(以及类型)。我知道WordPress可以使用任意输入运行其嵌入代码。例如,如下所示:$embed_code = wp_oembed_get($some_string); if($embed_code!=FALSE){ // do something clever } 假设至少有一些链接,它将返回一个完全标记的链接,其他所有链接都失败。然而,我所追求的行为是能够向其提供一些用户输入(在适当的卫生条件下),如