You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用get_results ARRAY_A的WordPress函数返回结果异常求助

解决WordPress热门标签输出显示Array的问题

问题出在你直接echo了整个数组元素,而每个查询结果都是一个关联数组,所以页面只会打印出Array。print_r能看到正确数据,说明SQL查询没问题,只是输出时没取到数组里的标签名称字段。

具体修改方法:

  1. 先确认你的SQL查询返回的数组结构,比如print_r($VDterms)后,看每个子数组里标签名称对应的键是什么(通常是name,如果SQL里给字段起了别名,比如tag_name,就用对应的别名)。
  2. 修改foreach循环,输出数组里的具体字段,而不是整个数组:

原来的错误代码:

$VDterms = $wpdb->get_results($VDtermsSQL, ARRAY_A);
foreach ($VDterms as $term) {
    echo $term; // 直接输出数组,导致显示Array
}

修改后的正确代码:

$VDterms = $wpdb->get_results($VDtermsSQL, ARRAY_A);
foreach ($VDterms as $term) {
    // 假设标签名称的键是name,根据实际结构调整
    echo esc_html($term['name']) . ' ';
}

补充说明:

  • 如果你的SQL语句是类似SELECT t.name AS tag_name FROM wp_terms t ...,那就要用$term['tag_name']来获取标签名称。
  • 用esc_html()是为了过滤标签名称里的特殊字符,避免XSS安全问题,符合WordPress开发规范。

内容的提问来源于stack exchange,提问作者silverzpeed

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 01:46:47