首页 > 解决方案 > Wordpress 搜索结果不显示来自外部来源的图像?

问题描述

我的 Wordpress 网站很特别,因为我将 Wordpress 与外部页面混合在一起。这些页面的内容存储在非 Wordpress 数据库中。我每天运行一次脚本来生成所有外部页面。他们通过包含以下代码来使用 Wordpress 主题:

define('WP_USE_THEMES', false);
require('../wp-blog-header.php');

这工作多年。现在我尝试将这些外部内容也包含在 Wordpress 搜索结果中。我找到了一种方法,将外部数据库的内容自动复制到 WP 数据库的 wp_posts 表中。这些外部记录具有自定义帖子类型。我还通过functions.php将自定义帖子类型添加到WP搜索中。这也很棒!

在最后一步中,我尝试将图像应用于这些“特殊”搜索结果。图像存储在外部目录中。不在 WP 图片文件夹中。我的日常脚本通过为附件添加新的 wp_posts 行和 wp_postmeta 行以将它们连接到帖子来添加这些功能图像 url。看起来与原生 WP 帖子条目一模一样。

不幸的是它不起作用:搜索结果显示文本内容,但没有图像。我还尝试生成此图像的所有 WP 尺寸,但它也不起作用。在检查源代码时,该标签仅显示“未知”。wp_posts 表的 guid 字段中的链接是正确的,但链接到外部目录。

我是否必须将所有外部图像复制到 WP 图像文件夹中才能使其正常工作?

或者还有其他更好的选择吗?

标签: databasewordpressimagesearchexternal

解决方案


同时我找到了一个合适的解决方案。我刚刚修改了主题的 search.php 并添加了

if(get_post_type() == 'my_custom_post_type')
{
$post_thumbnail_url = get_the_guid(get_post_thumbnail_id());
}

这样我就可以使用存储在附件帖子行的 guid 字段中的图像 url。


推荐阅读