WordPress metabox-div可编辑为输入

WordPress metabox-div可编辑为输入,wordpress,Wordpress,我创建了一个自定义post类型的WordPress元数据库('inventaire')。我想创建一个包含在可编辑div中的inv\u content分类法(因为它是用来生成表并立即编辑它们的) 然而,我的印象是WordPress不接受div可编辑条目,因为在我的帖子保存功能中,$\u post['inv\u content']不存在 这就是问题所在吗?我尝试了,但它没有呈现HTML内容(对于表内容,这是不实用的)。我怎么能这么做 function inventaire_add_metabox_t

我创建了一个自定义post类型的WordPress元数据库(
'inventaire'
)。我想创建一个包含在可编辑div中的
inv\u content
分类法(因为它是用来生成表并立即编辑它们的)

然而,我的印象是WordPress不接受div可编辑条目,因为在我的帖子保存功能中,
$\u post['inv\u content']
不存在

这就是问题所在吗?我尝试了
,但它没有呈现HTML内容(对于表内容,这是不实用的)。我怎么能这么做

function inventaire_add_metabox_table() {
    add_meta_box(
        'metabox_table',        
        'Contenu',                
        'show_metabox_table',   
        'inventaire',           
        'normal',              
        'high'                  
    );
}

add_action('add_meta_boxes', 'inventaire_add_metabox_table');

function show_metabox_table() {
    global $post;
    wp_nonce_field( 'inventaire_add_metabox_table_nonce', 'inventaire_add_table_nonce' ); 

    $table = get_post_meta($post->ID, 'inv_content', true);

?>
    <div id="inv-div-content" class="div_content inside" name="inv_content" contenteditable="true">
<?php 
}

function inventaire_save_metabox_table( ) {
    global $post;

    if( !isset( $_POST['inventaire_add_table_nonce'] ) || !wp_verify_nonce( $_POST['inventaire_add_table_nonce'],'inventaire_add_metabox_table_nonce') ) 
        return;

        if ( !current_user_can( 'edit_post', $post->ID )) 
        return;

    if (defined('DOING_AUTOSAVE') && DOING_AUTOSAVE)
        return;

    $meta_key = 'inv_content';
    $new_meta_value = ( isset( $_POST[$meta_key] ) ?  $_POST[$meta_key] : '' );
    $meta_value = get_post_meta( $post->ID, $meta_key, true);

    var_dump( $_POST[$meta_key]);

    if ( $new_meta_value && '' == $meta_value ){
        add_post_meta( $post->ID, $meta_key, $new_meta_value, true); 
        echo 'add';
    }

    elseif ( $new_meta_value && $new_meta_value != $meta_value ){
        update_post_meta( $post->ID, $meta_key, $new_meta_value );
        echo 'update';
    }

    elseif ( '' == $new_meta_value && $meta_value ){
        delete_post_meta( $post->ID, $meta_key, $meta_value );
        echo 'delete';
    }

}
add_action( 'save_post', 'inventaire_save_metabox_table' );
function inventaire\u add\u metabox\u table(){
添加元框(
“metabox_表”,
"康特努",,
“显示元框表格”,
“发明家”,
“正常”,
“高”
);
}
添加动作(“添加元框”、“inventaire添加元框”表);
函数show_metabox_table(){
全球$员额;
wp_nonce_字段('inventaire_add_metabox_table_nonce','inventaire_add_table_nonce');
$table=get\u post\u meta($post->ID,'inv\u content',true);
?>

两个选项:

1.

添加一个隐藏的输入类型,并在contenteditable div更改时使用javascript更新其值。将其值设置为contenteditable content

2

替换

<div id="inv-div-content" class="div_content inside" name="inv_content" contenteditable="true">


使用
contenteditable=“true”
属性创建div,并在javascript中为此元素添加事件侦听器:

window.onload=function(){
document.getElementById(“inv div content”).addEventListener(“输入”,函数(e){
var inputContent=e.target.innerHTML;//使用值执行任何操作
document.getElementById('actual-content-to-send')。value=inputContent;
},假);
}
#库存部门内容{
宽度:60%;
高度:50px;
显示:块;
}
插入文本内容


注意:将此文本区域更改为隐藏类型的输入元素,我已将其设置为文本,以查看其是否工作
文本区域
也不呈现HTML。我正在尝试第一个选项,谢谢!是否
文本区域
具有隐藏类型?它似乎不工作不,您需要将其更改为
我刚刚将其设置为示例,这是基本的cs HTMLyes,我只是想使用JQuery,我正在执行数据传输(在div和输入之间),只需点击
#publish
<textarea id="inv-div-content" class="div_content inside" name="inv_content">