使用主题定制器内置节

时间:2015-04-25 作者:zipzit

The WordPress Theme Customization API 指示主题开发人员可以使用许多现有的预构建自定义程序节。

如果要使用任何现有的内置组件,则无需使用add\\u section()声明它们。Instead, refer to them by name. 以下部分是内置的:

标题\\u标语

  • 颜色
  • 标题\\u图像
  • 背景\\u图像
  • 导航
  • 静态\\u首页
    • 是否按名称提及?哈,那是什么意思?为了更好地理解这一点,我创建了这个星球上最简单的主题。这是我的风格。css:

      /*  
      Theme Name: Minimal ZZ Test Theme
      Author: zipzit
      Description: An absolute minimal theme, intended to test Theme Customization API
      Version: 1.0
      License: GNU General Public License v2 or later
      License URI: http://www.gnu.org/licenses/gpl-2.0.html
      Tags:
      Text Domain: zz-test-theme
      */
      body{
          background-color: blue;
      }
      
      和索引。php:

      <?php   ?>
      <!doctype html>
      <html lang="en">
      <head>
        <meta charset="utf-8" />
        <title>Simple Web Page</title>
        <link rel="stylesheet" type="text/css" media="all" href="<?php bloginfo( \'stylesheet_url\' ); ?>" />
      </head>
      <body>
          <h1> this is a test </h1>
      </body>
      </html>
      
      这就是整个主题。没有功能。php文件。

      当我转到wp管理面板时,外观-->;自定义我将显示以下两个(六个可能的部分中的两个)部分:enter image description here

      “一个如何”;请参阅;通过“引用”到该节;名称;?是什么将固定选项拉入wp admin customize面板?我真正的问题是:当覆盖主题(使用子主题)时,如何隐藏预先存在的选择我们绝对不希望我们未来的管理员有机会改变他们不应该做的事情。(是的,我知道我们可以利用管理员权限系统隐藏元素,但这不是我的问题……)

      以前有人来过这里吗?非常感谢

      编辑/更新:

      这是我的确切情况。我做过很多网站,经常使用一个子主题来修改现有的主题,这让我有点接近。我正在寻找一个非常简单、不臃肿的引导主题。我找到了devdmbootstrap3,这给我留下了深刻的印象。唯一的问题是,主题生成了一系列我们不想显示的自定义选择(颜色、标题图像、背景图像)。我不知道是什么填充了这些元素。函数中没有add\\u section()调用。php文件。我仔细阅读了该文件(以及整个主题,包括theme options.php)。同样,我认为我的问题是不理解这些词;按名称引用它们;。我只是不知道这些东西叫什么名字。

      嗯。。考虑到这一点,我当然可以在本地主机服务器中安装wordpress core和该模板,然后逐步执行代码调试器样式,以找到调用实际创建这些元素的内容。呃。

      还有其他想法吗?再说一遍,谢谢。

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

    默认控件在中注册WP_Customize_Manager::register_controls(), 连接到customize_register. 此操作是通过另一种方法激发的,wp_loaded(), 连接到同名的操作。

    要删除这些默认控件,请在上使用自己的处理程序customize_register 具有更高的优先级,以便在register_controls() 已添加它们:

    function wpse_185386_remove_customize_controls( $wp_customize ) {
        $wp_customize->remove_section( \'title_tagline\' );
    }
    
    add_action( \'customize_register\', \'wpse_185386_remove_customize_controls\', 50 /* Priority */ );
    

    结束

    相关推荐