CPT Template Option to Top

时间:2018-03-09 作者:MLH

我编辑了以下核心文件,因为我无法更改我的子主题。我需要我的CPT模板选项首先出现在Post属性-模板下拉列表中。我是通过编辑实现的:/wp管理/包含/元框。php,位于“default\\u page\\u template\\u title”过滤器中。

我切换了两行的顺序,使我的CPT模板显示在顶部。

<?php page_template_dropdown( $template, $post->post_type ); ?>
<option value="default"><?php echo esc_html( $default_title ); ?></option>
</select>
我将如何在儿童主题中做到这一点?

非常感谢。

1 个回复
最合适的回答,由SO网友:Josue Ochoa 整理而成

你可以theme_{$post_type}_templates 并在末尾添加相同的“默认”选项:

add_action(\'theme_page_templates\', \'wpse_296283_theme_page_templates\');
function wpse_296283_theme_page_templates($post_templates){
  $post_templates[\'default\'] = "Default Template";  
  return $post_templates;  
}
然后用CSS隐藏第一个:

add_action(\'admin_head\' \'wpse_296283_admin_head\');
function wpse_296283_admin_head(){
  ?>
  <style>#page_template option:first-child {display: none;}</style>
  <?php
}

结束

相关推荐

WP自定义字段Metabox消失-ACF插件问题

所有帖子(包括CPT)上的WP自定义字段元框消失,帖子屏幕选项中的复选框也消失了。仅当高级自定义字段被激活时,才会发生这种情况。我的任何ACF字段组都不会隐藏自定义字段元盒,停用所有字段组也不会解决此问题。如何在帖子上显示自定义字段元框?