因为我不知道Buddypress和bbPress是如何将选项添加到页面模板下拉列表中的,我可能错了,但我认为唯一的方法(不包括将文件添加到主题文件夹或黑客核心)是使用javascript。
创建一个包含以下内容的文件,将其保存在某处,我将假定它的名称为my-script.js
它在一个子文件夹中\'js\'
主题文件夹的
jQuery(document).ready(function($) {
if ( $(\'select#page_template\').length ) {
var tmpl = myscriptdata.template;
var label = myscriptdata.template_label;
$(\'select#page_template\').append(\'<option value="\' + tmpl + \'">\' + label + \'</option>\');
}
});
然后将其排队
post.php
和
post-new.php
, 仅适用于页面,并传递要添加的模板:
add_action(\'admin_enqueue_scripts\', \'add_my_scripts\');
function add_my_scripts( $page ) {
if ( $page === \'post.php\' || $page === \'post-new.php\' ) {
global $typenow;
if ( $typenow === \'page\' ) {
wp_enqueue_script(\'myscript\', get_template_directory_uri() . \'/js/my-script.js\', array(\'jquery\'), null);
$data = array(
\'template\' => "my-template", // what you want to assign to dropdown value
\'template_label\' => "My Template" // what you want to assign to dropdown label
);
wp_localize_script(\'myscript\', \'myscriptdata\', $data );
}
}
}