Serialization Wordpress多输入自定义字段查询
我已经成功地保存了一个自定义元字段,并将多个输入保存到一篇文章中。输入如下:Serialization Wordpress多输入自定义字段查询,serialization,metadata,wordpress,meta-key,Serialization,Metadata,Wordpress,Meta Key,我已经成功地保存了一个自定义元字段,并将多个输入保存到一篇文章中。输入如下: <input type="text" name="menuitem[1][title]" /> <input type="text" name="menuitem[1][section]" /> <input type="text" name="menuitem[1][price]" /> <input type="text" name="menuitem[2][title]
<input type="text" name="menuitem[1][title]" />
<input type="text" name="menuitem[1][section]" />
<input type="text" name="menuitem[1][price]" />
<input type="text" name="menuitem[2][title]" />
<input type="text" name="menuitem[2][section]" />
<input type="text" name="menuitem[2][price]" /> etc.
数据存储在序列化数组中
我之所以这样做,是因为我想查询这个字段的值,它们彼此相关。e、 g.查询按menuitem[标题]的menuitem[价格]排序的帖子
问题是WP查询只能读取单个键值,不能读取序列化数据
有没有更好的方法来存储元密钥,使它们相互关联
任何建议都将被采纳。
谢谢您必须使用foreach 例如:
<?php
$entries = get_post_meta($post->ID, '_your_metabox_group_id', true );
foreach ( (array) $entries as $key => $entry ) {
$title = $section = $price = '';
if ( isset( $entry['_your_title_meta_id'] ) )
$title = get_post_meta($post->ID, '_your_title_meta_id', true);
if ( isset( $entry['_your_section_meta_id'] ) )
$section = get_post_meta($post->ID, '_your_section_meta_id', true);
if ( isset( $entry['_your_price_meta_id'] ) )
$price = get_post_meta($post->ID, '_your_price_meta_id', true);
// your output e.g
// echo '<span class="some-class">'.$title.'</span>';
}
?>
每个帖子有一个元数组吗?menuitem[x][title]中的x是$post->ID吗?不,它就像一个菜单,有几个带有[title]、[price]和[section]的menuitem。很抱歉,我没有说清楚。我的问题不是如何获取每个子键的值。我的问题是如何将数据存储在数据库中,这样我就可以得到包含其值的帖子。啊..好的。。。你为什么要重新发明轮子?有很多惊人的库,可以让您创建分组字段和自定义元数据库,并且它们是定期维护的。我个人使用cmb_定制_元数据库,你可以在这里找到它啊,我不知道。我来看看这个。非常感谢。