0
我似乎有我的元框保存問題,不完全確定我做錯了什麼。任何幫助將不勝感激!特定模板文件中沒有保存的Wordpress元框
我的繼承人功能文件:
add_action('add_meta_boxes', 'cd_meta_box_add');
function cd_meta_box_add()
{
$post_id = $_GET['post'] ? $_GET['post'] : $_POST['post_ID'] ;
$template_file = get_post_meta($post_id,'_wp_page_template',TRUE);
if ($template_file == 'golf.php')
{
add_meta_box (
'golf-times',
'Golf Opening Times & Prices',
'cd_meta_box_cb',
'page',
'normal',
'high'
);
}
}
function cd_meta_box_cb($post)
{
$values = get_post_custom($post->ID);
$times = isset($values['golf_meta_box_times']) ? esc_attr($values['golf_meta_box_times'][0]) : '';
$prices = isset($values['golf_meta_box_prices']) ? esc_attr($values['golf_meta_box_prices'][0]) : '';
wp_nonce_field('golf_meta_box_nonce', 'meta_box_nonce');
?>
<div style="overflow: hidden;">
<div style="width: 45%; float: left;">
<p><label for="golf_meta_box_times">Opening Times</label></p>
<p><textarea type="text" name="golf_meta_box_times" id="golf_meta_box_times" rows="5" style="width: 90%;" value="<?php echo $times; ?>"> </textarea></p>
</div>
<div style="width: 45%; float: left;">
<p><label for="golf_meta_box_prices">Prices</label></p>
<p><textarea type="text" name="golf_meta_box_prices" id="golf_meta_box_prices" rows="5" style="width: 90%;" value="<?php echo $prices; ?>"> </textarea></p>
</div>
</div>
<?php
}
add_action('save_post', 'cd_meta_box_save');
function cd_meta_box_save($post_id)
{
if(defined('DOING_AUTOSAVE') && DOING_AUTOSAVE) return;
if(!isset($_POST['meta_box_nonce']) || !wp_verify_nonce($_POST['meta_box_nonce'], 'golf_meta_box_nonce')) return;
if(!current_user_can('edit_post')) return;
$allowed = array(
'a' => array(
'href' => array()
)
);
if(isset($_POST['golf_meta_box_times']))
update_post_meta($post_id, 'golf_meta_box_times', wp_kses($_POST['golf_meta_box_times'], $allowed));
if(isset($_POST['golf_meta_box_prices']))
update_post_meta($post_id, 'golf_meta_box_prices', wp_kses($_POST['golf_meta_box_prices'], $allowed));
}
?>
如果任何人有一個線索,如何使這個拯救這將是一個很大的幫助!
我也有問題使數據顯示 - 但我只能假設,它實際上節省哈哈!
乾杯
我剛做了一個快速測試,它甚至顯示了頁面上的框中的內容,它似乎並沒有保存在管理端的東西,textarea框發送數據,顯示在前端,但不保存到管理端 – jamie
剛剛意識到它是什麼... 我把數據輸出放在textarea的值中,令人震驚的錯誤! – jamie
那麼,解決方案是什麼? – unifiedac