将来自动态生成的Foreach循环的数据存储在多维数组中

时间:2016-10-13 作者:Brend Brentjens

我试图找出如何在多维数组中存储图像和字符串。在admin中,有一个添加由jQuery生成的图像(+文本)的选项,如下所示:

foreach($images as $image){
   echo \'<li><input type="hidden" id="imageURL" name="imageURL[]" value="\'. $imageURL .\'" /><textarea name="imageTXT[]" class="imagelist">\'. $imageTXT .\'</textarea>&nbsp;<input type="button" value="\'. __("Remove", "sitnso") .\'" class="remove" /></span></li>\';
}
所有这些都很好。在Wordpress admin中,我得到一个列表,每个列表项有两个字段,一个用于图像URL,另一个用于文本。问题更多的是储蓄。我如何将所有这些信息存储到一个数组中,该数组的外观如下所示,并使用get\\u post\\u meta在正确的字段中获取meta?

Array(
    [0] => array(
        \'imageURL\' => \'image1.jpg\',
        \'imageTXT\' => \'This is text written in imageTXT\'
    ),
    [1] => array(
        \'imageURL\' => \'image2.jpg\',
        \'imageTXT\' => \'This is text written in imageTXT\'
    ),
    [2] => array(
        \'imageURL\' => \'image3.jpg\',
        \'imageTXT\' => \'This is text written in imageTXT\'
    ),
    [3] => array(
        \'imageURL\' => \'image4.jpg\',
        \'imageTXT\' => \'This is text written in imageTXT\'
    )
);
谢谢你的帮助。

1 个回复
最合适的回答,由SO网友:Benoti 整理而成

如果要在一个meta\\u键中存储数组,需要在输入名称中添加不同的键。对于我的示例,这是一种检索方式,您需要处于foreach循环中,其中$i是增量,其中包含$i++。要保存值,您需要使用[\'imageUrl\'][]和[\'imagetxt\'][]修改名称输入。

$imageset = get_post_meta($post_id, \'imageset\', true);
$i=0;
foreach($imageset as image){
echo \'<input type="hidden" name="imageset[\'.$i.\'][imageUrl]" value="\'.$imageset[$i][\'imageUrl\'].\'"/>\';
echo \'<textarea name="imageset[\'.$i.\'][imageTxt]">\'.$imageset[$i][\'imageTxt\'].\'</textarea>\';
$i++;
}
我测试它不是为了适应你的口哨声,但我相信你会得到它的!

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在