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

如何在数组循环中获取键名?WordPress自定义字段场景

解决方案

原代码的问题在于外层循环只获取了数组的值,没有捕获对应的键名(也就是你定义的media和content),修改方式如下:

修改后的代码

$fields = get_post_meta($postId);
unset($fields['_edit_lock'], $fields['_edit_last'], $fields['_thumbnail_id']);
echo '<ul>';
// 外层循环同时捕获字段键名和对应的值数组
foreach($fields as $fieldKey => $fieldValues) {
    // 遍历每个字段的具体值(get_post_meta默认返回数组格式的值)
    foreach($fieldValues as $value) {
        // 将键名首字母大写,匹配你期望的输出格式
        $displayKey = ucfirst($fieldKey);
        echo '<li>'.$displayKey.'->'.$value.'</li>';
    }       
}
echo '</ul>';

关键修改点

  • 外层foreach改为foreach($fields as $fieldKey => $fieldValues),直接拿到media和content这些字段的键名
  • 移除内层循环中未使用的$key变量
  • 用ucfirst($fieldKey)把小写键名转成首字母大写格式,对应你要的Media和Content
  • 替换原代码中输出$i(数组本身,所以显示Array)的部分,改为使用处理后的字段键名

内容的提问来源于stack exchange,提问作者rob.m

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 22:40:28