我几乎完成了我的wp主题,现在我正在用WPML插件翻译它。这很好(即使是我所有的自定义帖子类型和元框:),但当然会有问题。我已将元框添加到一个特定页面,并将其作为如下目标:
add_action(\'admin_init\',\'my_meta_init\');
function my_meta_init()
{
$post_id = $_GET[\'post\'] ? $_GET[\'post\'] : $_POST[\'post_ID\'] ;
// checks for post/page ID
if ($post_id == \'17\')
{
add_meta_box(\'meta_webdesign\', \'Webdesign\', \'my_meta_webdesign\', \'page\', \'normal\', \'high\');
add_meta_box(\'meta_grafisk\', \'Grafisk design & Identitets design\', \'my_meta_grafisk\', \'page\', \'normal\', \'high\');
add_meta_box(\'meta_illustrasjon\', \'Illustrasjon\', \'my_meta_illustrasjon\', \'page\', \'normal\', \'high\');
}
但现在我还需要针对页面的英文版本(id 348),我该怎么做?
附:我试过这个:if ($template_file == \'page-tjenester.php\') (挪威语和英语版本都使用相同的模板,但随后所有的元框都消失了。
我将非常感谢您的帮助:)
SO网友:Elisabeth
我终于可以使用了($template_file==\'page tjentester.php\'),所以现在我的元框只有在我使用这个特定的页面模板时才会显示!
如果有人感兴趣,这是最后的代码;
add_action(\'admin_init\',\'my_meta_init\');
function my_meta_init()
{
$post_id = $_GET[\'post\'] ? $_GET[\'post\'] : $_POST[\'post_ID\'] ;
$template_file = get_post_meta($post_id,\'_wp_page_template\',TRUE);
if ($template_file == \'page-tjenester.php\') { // this will only show on pages that have been saved with the page-tjenester.php template
add_meta_box(\'meta_webdesign\', \'Webdesign\', \'my_meta_webdesign\', \'page\', \'normal\', \'high\');
add_meta_box(\'meta_grafisk\', \'Grafisk design & Identitets design\', \'my_meta_grafisk\', \'page\', \'normal\', \'high\');
add_meta_box(\'meta_illustrasjon\', \'Illustrasjon\', \'my_meta_illustrasjon\', \'page\', \'normal\', \'high\');
}
}
一点也不难(不知道我之前尝试这个时做错了什么)