我正在开发一个函数,该函数允许用户从前端发布/编辑/管理帖子,而我却被数组更新所困扰。
update_post_meta($post_id, 'lapp_appmenu',$_POST['appmenu']);此方法适用于单个值,但在处理Array时失败(当提交时,它只删除先前设置的值)。
先谢谢你,
尼古拉
编辑:
该数组是一个无限的项目列表。
<?php
$i = 0;
if ($appmenu) {
foreach($appmenu as $row) { ?>
<li><span class="sort hndle">|||</span>
<input type="text" name="lapp_appmenu[<?php echo $i; ?>]" id="lapp_appmenu" value="<?php echo $row; ?>" size="30" />
<a class="repeatable-remove button" href="#">-</a></li>
<?php
$i++;
}
} else { ?>
<li><span class="sort hndle">|||</span>
<input type="text" name="lapp_appmenu[<?php echo $i; ?>]" id="lapp_appmenu" value="" size="30" />
<a class="repeatable-remove button" href="#">-</a></li>
<?php }?>发布于 2013-02-15 15:15:36
Wordpress将元值存储为字符串。当您向update_post_meta传递数组时,它会自动将其转换为字符串。您需要做的是在尝试读取数据时对其执行unserialize操作。
http://codex.wordpress.org/Function_Reference/update_post_meta (说明该值已转换为字符串)
http://php.net/manual/en/function.unserialize.php
https://stackoverflow.com/questions/14887442
复制相似问题