元数据箱

时间:2016-01-03 11:55:54

标签: php arrays wordpress

我想让用户能够选择与他关于发布的帖子相关的几篇帖子,以便帖子显示在帖子本身的底部。 所以我创建了一个包含多个选项的元数据箱。 现在我有两个问题: 1)将他的选择保存为选项数组。我设法只使用此代码执行此操作:

update_post_meta( $post_id, 'related-posts', array_map( 'strip_tags', $_POST['related-posts']) );

问题是它产生了数组:

array (size=1)
  0 => 
    array (size=8)
      0 => string '38262' (length=5)
      1 => string '38257' (length=5)
      2 => string '38247' (length=5)
      3 => string '38217' (length=5)
      4 => string '38228' (length=5)
      5 => string '38229' (length=5)
      6 => string '38211' (length=5)
      7 => string '38198' (length=5)

这是正确的做法吗?没有更好的解决方案,只能使它成为一维数组? (我不想使用implode方法)。

2)当选择被保存时,需要突出显示,所以我试过这个:

$array_posts = get_posts($args); ?>
<form action="" method="post" name="related-post-form"> 
    <select name='related-posts[]' multiple='multiple' size='30'>
        <?php foreach($array_posts as $post): setup_postdata($post); ?>
        <option value="<?php echo $post->ID; ?>" <?php if ($_POST['related-posts'] == $post->ID ) echo ' selected'; ?>><?php the_title(); ?></option>
      <?php endforeach; ?>
    </select>
</form>

不能工作。

任何帮助都将受到赞赏..谢谢!

0 个答案:

没有答案