未保存的自定义邮件类型的丰富自定义字段

时间:2013-12-29 作者:Dr.Hariri

我对创建元框很陌生,我正在尝试创建一个自定义字段元框,该框连接到由WooTheme Sensei创建的自定义帖子类型(帖子类型=课程)。我正在尝试使用wp\\u编辑器,但问题是我似乎无法保存字段。

我已经在这里和谷歌检查了很多类似的问题,尝试了不同的解决方案,但似乎没有任何效果,我一定错过了什么!

这是我正在使用的3个函数,我试图打开调试,但似乎没有什么突出的地方。感谢您的帮助!

add_action( \'add_meta_boxes\', \'add_educadme_related_resources_metabox\' );
add_action(\'save_post\', \'save_educadme_related_resources\', 10, 2);

// Add the Custom Fields Meta Boxe
function add_educadme_related_resources_metabox() {
    add_meta_box(\'educadme_related_resources\', \'Related Resources\', \'display_educadme_related_resources\', \'lesson\', \'normal\', \'high\');
}


// The Custom Fields Meta Metabox
function display_educadme_related_resources() {
    global $post;
    // Get the resources data if its already been entered
    $educadme_resources = get_post_meta($post->ID, \'Related_Resources\', true);
    wp_editor( $educadme_resources, \'related-editor\', array( \'textarea_name\' => \'related_resources\', \'media_buttons\' => false ));
}

function save_educadme_related_resources(){
    // Is the user allowed to edit the post or page?
    global $post;
    if ( !current_user_can( \'edit_post\', $post->ID ))
        return;
    // check autosave
    if (defined(\'DOING_AUTOSAVE\') && DOING_AUTOSAVE) {
        return;
    }
    // OK, authenticated: we need to find and save the data
    update_post_meta($post->ID, "Related_Resources", $_POST["Related_Resources"]);

}

1 个回复
最合适的回答,由SO网友:Robin Westerlundh 整理而成

wp\\u编辑器上的第二个参数是“metabox”字段id/默认名称,您需要将其放入“update\\u post\\u meta”中,以便wordpress知道要保存什么或指定正确的textarea\\u名称。

在display\\u educadme\\u related\\u resources()中,使用:

$educadme_resources = get_post_meta($post->ID, \'related-editor\', true);
在save\\u educadme\\u related\\u resources()中使用:

update_post_meta($post->ID, "related-editor", $_POST["related-editor"]);

结束

相关推荐

WP_Query in functions.php

我有一些代码要转换成函数。它工作得很好,直到我将其包装到所述函数中: $args = array( \'posts_per_page\' => -1, \'post_type\' => \'asset\', \'category_name\' => $cat ); $cat_query = new WP_Query( $args );