我需要一种方法将元框限制为单个页面(ID = 84)...如果我执行以下操作它可以工作,但是sbumit数据不会通过并且数据不会被保存...
add_action('admin_init','violin_init');
function violin_init()
{
if ($_GET['post'] == '84')
{
wp_enqueue_style('violin_admin_css', VIOLIN_THEME_PATH . '/custom/meta.css');
add_meta_box('violin_options_meta', 'Highlight Content', 'violin_options_meta', 'page', 'normal', 'high');
add_action('save_post','violin_save_meta');
}
}
答案 0 :(得分:1)
我找到了一个有效的解决方案,但我希望有一种方法可以通过wordpress API和/或其中一个wordpress'全局...
以下作品:
if ($_GET['post'] == '84' OR $_REQUEST['post_ID'] == '84')
此外,您还可以按特定模板进行过滤:
$post_id = $_GET['post'] ? $_GET['post'] : $_POST['post_ID'] ;
$template_file = get_post_meta($post_id,'_wp_page_template',TRUE);
if ($template_file == 'home.php') {} // by template file
if ($post_id == 84) {} // by page ID
我写了一篇博文:Page Specific WordPress Meta Box