项目需求: 今天在做一个项目的时候需要给每一个页面模板添加不同的自定义字段面板作为模板的附加内容!
解决方案:
1.首先自定义字段函数add meta box()函数是不支持页面模板选择器单独调用的所以我想了个办法利用后台加载编辑文章页面的url参数来对此页面进行判断并加载这个函数
<?php
add_action('init', 'show_ai');
function show_ai(){
if ($_GET['post'] && $_GET['action']=="edit") {
$pid = $_GET['post'];
$post_is = get_post($pid, ARRAY_A);
///var_dump($post_id_158);
if ($post_is['post_type']=="page") {
//建立已有模板数组
$template_array=array(template-1.php,template-2.php,template-3.php,template-4.php /*......*/);
//循环数组
foreach ($template_array as $key => $value) {
if ($value == $post_is['page_template']) {
//require_once 'type_template/add_meta_box_1.php';
////这里加载add_meta_box()
require_once 'type_template/add_meta_box_'.$key.'.php';
}
}
}
}
};?>
2.新建页面是不会显示自定义字段编辑面板的。这就是2.