Wordpress-如何从metabox保存多个选择项值

Wordpress-如何从metabox保存多个选择项值,wordpress,save,meta-boxes,Wordpress,Save,Meta Boxes,我制作了一个元盒,其中包含一个多选择项,该项从自定义帖子类型中获取他的值。 它可以工作,但我无法保存它…你能帮我吗 function conduce_palinsesto($post){ ?><p>Seleziona il/i conduttore/i</p> <p>Tieni premuto CTRL per selezionare più conduttori</p> <?php global $post; echo '<se

我制作了一个元盒,其中包含一个多选择项,该项从自定义帖子类型中获取他的值。 它可以工作,但我无法保存它…你能帮我吗

function conduce_palinsesto($post){
?><p>Seleziona il/i conduttore/i</p>
<p>Tieni premuto CTRL per selezionare più conduttori</p>
<?php
global $post;
echo '<select name="conduce[]" id="conduce" multiple="yes">';
$val = get_post_meta($post->ID, 'speaker', true);
$q = get_posts('post_type=speaker');

foreach ($q as $obj)
{
    echo '<option value="'.$obj->ID.'" "checked="checked">'.$obj->post_title.'</option>';
}
echo '</select>';
}

要保存在元数据库中插入/选择的数据,必须使用。也许你想看看WP法典中的问题。

我知道这个问题可能已经解决很久了,但这里是答案。我也遇到了同样的问题,我就是这样解决的

挽救

function rb_speaker_save_details($post_id) {

$is_autosave = wp_is_post_autosave( $post_id );
$is_revision = wp_is_post_revision( $post_id );
$is_valid_nonce = ( isset( $_POST[ 'name_of_nonce' ] ) && wp_verify_nonce( $_POST[ 'name_of_nonce' ], basename( __FILE__ ) ) ) ? 'true' : 'false';

if ( $is_autosave || $is_revision || !$is_valid_nonce ) {
    return;
}

if( isset($_POST['conduce']) ) {
  $speak = implode(',', $_POST['conduce']);
  update_post_meta($post_id, 'conduce', $speak);
}}
并根据保存的数据检查该选项

            echo '<option value="', $slug, '" ';
        if(strpos($conduce_val, $slug) !==false) { echo 'selected="selected"'; }
        echo '>',the_title(), "</option>\n";
echo“”,标题(),“\n”;

我添加了save函数是否正确,save函数中的自定义元名称为“conduce”,metabox函数中的“speaker”是否正确?speaker是post类型,但在代码段的第7行中,您获得了post元“speaker”。我认为这一定是“有帮助的”,不是吗?在这一行,我会选择其他类型的帖子作为选择
            echo '<option value="', $slug, '" ';
        if(strpos($conduce_val, $slug) !==false) { echo 'selected="selected"'; }
        echo '>',the_title(), "</option>\n";