Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php WordPress元框-第二个字段未保存_Php_Wordpress_Meta Boxes - Fatal编程技术网

Php WordPress元框-第二个字段未保存

Php WordPress元框-第二个字段未保存,php,wordpress,meta-boxes,Php,Wordpress,Meta Boxes,因此,我一直在玩一些自定义元盒和以下教程等-我已经到了一个点,顶部元盒字段保存正确,但第二个字段(宽度)没有保存-是否有任何明显的我在这里做错了?我曾尝试将第二个字段的save in分离到一个单独的函数中进行测试,但这也不起作用 add_action( 'add_meta_boxes', 'youtube_metaboxes' ); function youtube_metaboxes() { add_meta_box('wpt_youtube', 'youtu

因此,我一直在玩一些自定义元盒和以下教程等-我已经到了一个点,顶部元盒字段保存正确,但第二个字段(宽度)没有保存-是否有任何明显的我在这里做错了?我曾尝试将第二个字段的save in分离到一个单独的函数中进行测试,但这也不起作用

    add_action( 'add_meta_boxes', 'youtube_metaboxes' );

    function youtube_metaboxes() {
        add_meta_box('wpt_youtube', 'youtube URL', 'wpt_youtube', 'product', 'side', 'default');
    }

    function wpt_youtube() {
        global $post;
        echo '<input type="hidden" name="youtubemeta_noncename" id="youtubemeta_noncename" value="' .
        wp_create_nonce( plugin_basename(__FILE__) ) . '" />';
        $addyoutube = get_post_meta($post->ID, '_youtube', true);
        echo '<input type="text" name="_youtube" value="' . $addyoutube  . '" class="widefat" />';
        $youtubeWidth = get_post_meta($post->ID, '_width', true);
        echo 'Width: <br /><input type="text" name="_width" value="' . $youtubeWidth  . '" class="widefat" />';
    }

    // Save the Metabox Data
    function wpt_save_youtube_meta($post_id, $post) {
        if ( !wp_verify_nonce( $_POST['youtubemeta_noncename'], plugin_basename(__FILE__) )) {
        return $post->ID;
        }
        if ( !current_user_can( 'edit_post', $post->ID ))
            return $post->ID;
        $addyoutube_meta['_youtube'] = $_POST['_youtube'];
        foreach ($addyoutube_meta as $key => $value) {
            if( $post->post_type == 'revision' ) return;
            $value = implode(',', (array)$value); // If $value is an array, make it a CSV (unlikely)
            if(get_post_meta($post->ID, $key, FALSE)) {
                update_post_meta($post->ID, $key, $value);
            } else {
                add_post_meta($post->ID, $key, $value);
            }
            if(!$value) delete_post_meta($post->ID, $key);
        }

        $addWidth_meta['_width'] = $_POST['_width'];
        foreach ($addWidth_meta as $key => $value) {
            if( $post->post_type == 'revision' ) return;
            $value = implode(',', (array)$value); // If $value is an array, make it a CSV (unlikely)
            if(get_post_meta($post->ID, $key, FALSE)) {
                update_post_meta($post->ID, $key, $value);
            } else {
                add_post_meta($post->ID, $key, $value);
            }
            if(!$value) delete_post_meta($post->ID, $key);
        }
    }

add_action('save_post', 'wpt_save_youtube_meta', 1, 2); // save the custom fields
add_操作('add_meta_box','youtube_metaboxes');
函数youtube_元盒(){
添加“元”框(“wpt_youtube”、“youtube URL”、“wpt_youtube”、“产品”、“侧面”、“默认”);
}
函数wpt_youtube(){
全球$员额;
回声';
$addyoutube=get_post_meta($post->ID,'u youtube',true);
回声';
$youtubeWidth=get_post_meta($post->ID,'u width',true);
回声“宽度:
”; } //保存Metabox数据 函数wpt\u save\u youtube\u meta($post\u id,$post){ 如果(!wp\u verify\u nonce($\u POST['youtubemeta\u noncename'],plugin\u basename(\uuuu FILE\uuuu))){ 返回$post->ID; } 如果(!当前用户\u可以('edit\u post',$post->ID)) 返回$post->ID; $addyoutube\u meta[''u youtube']=$\u POST['u youtube']; foreach($addyoutube\u meta as$key=>$value){ if($post->post_type=='revision')返回; $value=内爆(“,”,(数组)$value);//如果$value是数组,则将其设置为CSV(不太可能) if(get_post_meta($post->ID,$key,FALSE)){ 更新发布元数据($post->ID,$key,$value); }否则{ 添加帖子元($post->ID,$key,$value); } 如果(!$value)删除帖子元($post->ID,$key); } $addWidth\u meta[''u width']=$\u POST[''u width']; foreach($addWidth\u meta作为$key=>$value){ if($post->post_type=='revision')返回; $value=内爆(“,”,(数组)$value);//如果$value是数组,则将其设置为CSV(不太可能) if(get_post_meta($post->ID,$key,FALSE)){ 更新发布元数据($post->ID,$key,$value); }否则{ 添加帖子元($post->ID,$key,$value); } 如果(!$value)删除帖子元($post->ID,$key); } } 添加动作('save_post','wpt_save_youtube_meta',1,2);//保存自定义字段
我浏览了这篇文章:

似乎是创建自定义元框的更好方法