【问题标题】:Wordpress update_post_meta and array value issueWordpress update_post_meta 和数组值问题
【发布时间】:2013-02-15 02:19:59
【问题描述】:

我正在开发允许用户从前端发布/编辑/管理帖子的功能,但我一直在更新数组。

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   }?>

【问题讨论】:

    标签: arrays wordpress metadata frontend


    【解决方案1】:

    Wordpress 将元值存储为字符串。当您传递update_post_meta 一个数组时,它会自动将其转换为字符串。当您尝试读取数据时,您需要做的是unserialize

    http://codex.wordpress.org/Function_Reference/update_post_meta(说明将值转换为字符串)

    http://php.net/manual/en/function.unserialize.php

    【讨论】:

      猜你喜欢
      • 2013-10-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-07-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多