Пользовательский тип сообщения Metabox не сохраняет данные - PullRequest
0 голосов
/ 14 декабря 2018

Я создаю пользовательский тип записи, который будет иметь собственный метабокс с новым полем.По какой-то причине мое поле не сохраняет данные.Прикреплен мой код:

function route_coordinates(){
    add_meta_box(
        'coordinate_box',             
        'Route Coordinates',        
        'route_coordinates_html',           
        'routes'    
    );

}
add_action('add_meta_boxes', 'route_coordinates');

function route_coordinates_html(){
?>
<textarea name="route_coordinates" id="route_coordinates" class="widefat"><?php echo esc_attr( get_post_meta( $post->ID, 'routes_coordinates', true ) ); ?></textarea>
<?php
}


function map_save_postdata($post_id)
{
if (array_key_exists('route_coordinates', $_POST)) {
    update_post_meta(
        $post_id,
        '_coordinates',
        $_POST['route_coordinates']
    );
}
}
add_action('save_post', 'map_save_postdata');

1 Ответ

0 голосов
/ 14 декабря 2018

Исправлено, использовались неправильные команды.

function route_coordinates(){
    add_meta_box(
        'coordinate_box',             
        'Route Coordinates',        
        'route_coordinates_html',           
        'routes'    
    );

}
add_action('add_meta_boxes', 'route_coordinates');

function route_coordinates_html(){
global $post;
$get_all_meta_values = get_post_custom($post->ID);
$route_coordinates=$get_all_meta_values["route_coordinates"][0];
?>
<textarea name="route_coordinates" id="route_coordinates" class="widefat"><?php 
echo $route_coordinates; ?></textarea>
<?php
}


add_action('save_post', 'save_route_coordinates');
function save_route_coordinates(){
global $post;
update_post_meta($post->ID, "route_coordinates", $_POST["route_coordinates"]);
}
...