Php 在一个post元数组中保存多个字段
我正在为小时创建一个自定义字段,因此我决定为每个工作日的小时数输入7个输入Php 在一个post元数组中保存多个字段,php,wordpress,Php,Wordpress,我正在为小时创建一个自定义字段,因此我决定为每个工作日的小时数输入7个输入 $week = [ 'monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'saturday', 'sunday' ]; foreach ($week as $day) { $value = get_post_meta( $
$week = [
'monday',
'tuesday',
'wednesday',
'thursday',
'friday',
'saturday',
'sunday'
];
foreach ($week as $day) {
$value = get_post_meta( $post->ID, "$day", true ); ?>
<div>
<label for="<?php echo $day; ?>_hours" style="display: inline-block;float: left;clear: left;width: 250px;text-align: right;"><?php echo ucfirst($day); ?> Hours: </label>
<input type="text" id="<?php echo $day; ?>_hours" name="<?php echo $day; ?>" value="<?php echo "$value"; ?>" >
</div>
<?php }
这就给我留下了7个
post\u meta
条目。此外,使用此方法,我必须在保存和显示功能中复制我的$week[]
数组。我是否可以将值存储为key=>value对,并仅引用1post\u meta
object 为什么不只保存一个元值(作为数组)?例如:
$week = array(
'monday' => !empty( $_POST['monday'] ) ? sanitize_text_field( $_POST['monday'] ) : '',
'tuesday' => 'someval',
'wednesday' => 'someval',
'thursday' => 'someval',
'friday' => 'someval',
'saturday' => 'someval',
'sunday' => 'someval'
);
update_post_meta( $post_id, 'week', $week );
然后,您可以使用以下工具获取所有数据:
$week = get_post_meta( $post_id, 'week', true ); // retrieve an array of week data
我们在工作中所做的。在我们的自定义框架中,我们有一个方法,您可以将关联数组发送到该方法。在您的场景中,创建自己的函数来实现这一点似乎很理想。易于制作,键是字段,值是。。值不确定这是否是您的意思,但如果您这样命名输入
$week = get_post_meta( $post_id, 'week', true ); // retrieve an array of week data