Wie verstecke ich den Seiteneditor (WYSIWYG-Editor), wenn die aktuelle Seite auf eine bestimmte Vorlage eingestellt ist?
Ich habe den folgenden Code bereits in benutzerdefinierten Meta-Feldern hinzuzufügen, wenn bestimmte Vorlagen ausgewählt werden:
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);
$savemeta = true;
if ($template_file == 'template-page-2quotes.php') {
add_meta_box('main_quote_meta-meta', 'Top Quote', 'main_quote_meta', 'page', 'side', 'low');
add_meta_box('sub_quote_meta-meta', 'Right Hand Side Quote', 'sub_quote_meta', 'page', 'normal', 'low');
} elseif ($template_file == 'template-page-1quote.php') {
add_meta_box('sub_quote_meta-meta', 'Right Hand Side Quote', 'sub_quote_meta', 'page', 'normal', 'low');
} elseif ($template_file == 'template-page-factsnfigures.php') {
add_meta_box('facts_n_figures-meta', 'Amount Raised', 'facts_n_figures', 'page', 'normal', 'low');
} elseif ($template_file == 'template-page-fundraising.php') {
add_meta_box('fundraising_ideas-meta', 'Fundraising Ideas', 'fundraising_ideas', 'page', 'side', 'low');
} else {
$savemeta = false;
}
if($savemeta == true) {
add_action('save_post','my_meta_save');
}
}
Was ich zum Beispiel möchte, ist, dass der Editor entfernt wird, wenn $template_file == 'template-page-2quotes.php'
Bearbeiten (Arbeitscode):
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);
$savemeta = true;
$hideeditor = false;
if ($template_file == 'template-page-2quotes.php') {
add_meta_box('main_quote_meta-meta', 'Top Quote', 'main_quote_meta', 'page', 'side', 'low');
add_meta_box('sub_quote_meta-meta', 'Right Hand Side Quote', 'sub_quote_meta', 'page', 'normal', 'low');
} elseif ($template_file == 'template-page-1quote.php') {
add_meta_box('sub_quote_meta-meta', 'Right Hand Side Quote', 'sub_quote_meta', 'page', 'normal', 'low');
} elseif ($template_file == 'template-page-factsnfigures.php') {
add_meta_box('facts_n_figures-meta', 'Amount Raised', 'facts_n_figures', 'page', 'normal', 'low');
} elseif ($template_file == 'template-page-fundraising.php') {
add_meta_box('fundraising_ideas-meta', 'Fundraising Ideas', 'fundraising_ideas', 'page', 'side', 'low');
} elseif($template_file == 'template-page-news.php') {
$hideeditor = true;
$savemeta = false;
} else {
$savemeta = false;
}
if($savemeta == true) {
add_action('save_post','my_meta_save');
}
if($hideeditor == true) {
add_action('admin_print_styles', 'admin_no_editor_style');
}
}
function admin_no_editor_style() {
echo "<style>#postdivrich{display:none;}</style>";
}
'supports' => array('editor')
gefragt haben, ob es einen Filter oder Hook gibt, den Sie auslösen können, um den Editor zu entfernen ...