wordpress 调用另外一个网站的内容 按指定关键词调用

要在WordPress中调用另一个网站的内容并根据指定关键词进行筛选,你可以使用以下代码。这段代码使用了WordPress内置的wp_remote_get函数来获取远程网站的内容,然后使用PHP的DOMDocument和DOMXPath类来解析HTML并筛选出包含指定关键词的内容。

首先,在你的主题的functions.php文件中添加以下代码:

复制代码
复制代码
function get_remote_content_by_keyword($url, $keyword) {
    // 获取远程网站内容
    $response = wp_remote_get($url);
    $content = wp_remote_retrieve_body($response);

    // 检查是否获取成功
    if (is_wp_error($response)) {
        return 'Error fetching content';
    }

    // 解析HTML
    $dom = new DOMDocument();
    @$dom->loadHTML($content);
    $xpath = new DOMXPath($dom);

    // 查找包含关键词的元素
    $elements = $xpath->query("//*[contains(translate(., 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'abcdefghijklmnopqrstuvwxyz'), '$keyword')]");

    // 提取并返回包含关键词的内容
    $filtered_content = '';
    foreach ($elements as $element) {
        $filtered_content .= $dom->saveHTML($element);
    }

    return $filtered_content;
}

接下来,在你的主题模板文件中(例如index.php),你可以使用以下代码调用远程网站的内容并筛选出包含指定关键词的内容:

复制代码
复制代码
$url = 'https://example.com'; // 替换为你要获取内容的远程网站的URL
$keyword = 'your_keyword'; // 替换为你想要筛选的关键词

$filtered_content = get_remote_content_by_keyword($url, $keyword);
echo $filtered_content;

请注意,这段代码可能会受到跨域资源共享(CORS)策略的限制。如果遇到问题,你可能需要在远程服务器上设置适当的CORS头,或者使用WordPress插件(如WP-CORS)来解决跨域问题。

来源

https://www.jianzhanpress.com/?cat=1

相关推荐
孙琦Ray23 分钟前
PrivacySafe 发布 57 个免费开源安全脚本,覆盖 139 个漏洞
wordpress·开源安全·漏洞防护·php2shell·privacysafe
李纲明42 分钟前
WordPress 报建立数据库连接时出错:先核 wp-config 四元组,再查 MySQL 服务与表修复
运维·数据库·mysql·wordpress·排障·devdiy
李纲明1 小时前
WordPress 登录后跳回登录页或提示「Cookie 被阻止」:先核站点 URL 与 HTTPS 一致,再查安全插件与 CDN
https·登录·cdn·wordpress·cookie·devdiy·站点url
李纲明3 小时前
WordPress 提示「建立数据库连接时出错」:先核 wp-config 与数据库服务,再查表损坏与磁盘配额
数据库·wordpress·devdiy
李纲明6 小时前
WordPress 全站 HTTPS 后仍显示「不安全」或锁被划掉:先清混合内容,再核证书链与强制跳转
网络协议·安全·https·wordpress·devdiy·混合内容
李纲明21 小时前
WordPress 白屏或提示「出现了严重错误」:先开 WP_DEBUG 抓致命错误,再二分插件与主题
运维·php·debug·wordpress·白屏·插件冲突·devdiy
李纲明1 天前
WordPress 定时发布不准点或备份/邮件从不跑:先分清 WP-Cron 触发与 DISABLE_WP_CRON,再查回环与系统 Cron
运维·性能优化·wordpress·定时任务·devdiy·wp-cron
李纲明1 天前
WordPress 登录后跳回登录页或一直转圈:先核 Cookie、站点 URL 与 HTTPS,再查 CDN 与安全插件
登录·cdn·wordpress·cookie·devdiy·安全插件
李纲明1 天前
WooCommerce 支付成功但订单仍「待付款」或不扣库存:先核 webhook 与支付回调,再查库存预留与缓存
支付·webhook·wordpress·woocommerce·库存·devdiy·订单状态
李纲明1 天前
WordPress Elementor 编辑器空白或加载转圈:先核 PHP 内存与 REST,再查插件冲突与 Cloudflare
wordpress·elementor·插件冲突·devdiy