WordPress元框不保存任何内容

时间:2013-01-31 16:07:37

标签: wordpress custom-post-type meta-boxes

我的wordpress中有更多自定义元,其中一个不保存任何东西。 这是保存的代码

add_action('save_post', 'save_details');
function save_details($post_id){
$slug = 'homepage';
/* check whether anything should be done */
$_POST += array("{$slug}_edit_nonce" => '');
if ( !current_user_can( 'edit_post', $post_id ) ) {
    return;
}
if ( !wp_verify_nonce( $_POST["{$slug}_edit_nonce"], plugin_basename( __FILE__ ) ) ){
    return;
}
/* Request passes all checks; update the post's metadata */
if (isset($_REQUEST['link_homepage'])) {
    update_post_meta($post_id, 'link_homepage', $_REQUEST['link_homepage']);
} 

}

有人可以帮帮我吗? 谢谢!

1 个答案:

答案 0 :(得分:1)

我终于创建了一个正常工作的代码,在我在wordpress中的自定义字段中写入后,单击“保存”将其从textarea字段中删除,但保存它并且可以正常工作。

这是新的coode:

<?php
// add meta box for post types
add_action("admin_init", "admin_init");   
function admin_init(){ 
    add_meta_box( 
        'settings_meta_id', 
        'Link Homepage', 
        'settings_meta', 
        'homepage', 
        'normal', 
        'high' 
    );
}    
function settings_meta( $post ){
    //global $post; 
    $values = get_post_custom( $post->ID );
    $links = isset( $values['link_homepage'] ) ? $values['link_homepage'][0] : '';
    wp_nonce_field( 'homepage_box_nonce', 'link_homepage_nonce' );
?>
<p>
    <label for="link_homepage">Link homepage:</label><br /> 
    <textarea cols="100" rows="2" name="link_homepage" style="width:98%;"><?php echo $link_homepage; ?></textarea>
</p> 
<?php }
add_action( 'save_post', 'save_custom_details' );
function save_custom_details( $post_id ) {
    global $post;   
    //skip auto save
    if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) {
        return $post_id;
    }
    //check for you post type only
    if( $post->post_type == "homepage" ) {
        if( isset($_POST['link_homepage']) ) { update_post_meta( $post->ID, 'link_homepage', $_POST['link_homepage'] );}

    }
}
?>

如何修复该BUG,保存后保存文本?