怎么用WordPress Customize API添加原生設置?-WordPress開發

    為主題添加原生的設置選項。不用框架,

    也許大部分主題是使用相關的設置框架。如果我們的主題只有幾個選項呢?可以在主題的自定義里面配置。這一節就教大家如何制作主題的設置選項。

    本站下載該頁歷史版本

    customizer-custom-controls-master

    提取碼:無
    解壓碼:無

    我開發的博客主題Mirages就是使用這個方法來進行主題的設置。可以下載下來看看(新年前發布?)。

    設置 API是在 2.7 版本中加入的新功能。它令包含設置表單的管理頁面實現“半自動工作”,允許您定義整個管理頁面、選項區域,甚至具體的欄目。

    本站下載:

    [zrz_file link="https://n.getimg.net/www/2019/01/10eca19b133531.zip" name="colormag.1.3.4" code=""]

    在主題的functions.php文件中底部添加如下代碼:

    //面板、設置節、設置,控件
            //添加一個設置面板
    		$wp_customize->add_panel( 'npcink_options',             //ID=npcink_options
    		array(          
    			'capabitity'  => 'edit_theme_options',              //根據用戶的權限級別顯示或隱藏該部分。默認為edit_theme_options 
    			'description' => __( 'Npcink出品', 'npcink' ),      //可選。顯示在面板頂部的描述隱藏在幫助圖標后面。
    			'priority'    => 30,                               //優先級,可選。這將控制此部分在Theme Customizer側欄中的顯示順序。
    			'title'       => __( 'Lifet主題設置', 'npcink' ),    //面板的可見名稱。
    		) );
    		 
    
    		//添加第一個設置節(文本節)
    		$wp_customize->add_section('sections_text_demo',       //id = sections_1
    		array(                
    			'title'     => '第一個設置節',               //設置的可見名稱。
    			'description' => '第一個設置節詳細補充',      //設置的詳細信息
    			'panel' => 'npcink_options',                 //加入第一個設置面板'npcink_options'  => 50//優先級
    		) );
    		/////////////////////////////////////////////////////////////////////////////////////////////////
    		//添加第一個設置節的第一個設置
            $wp_customize->add_setting('aaa',
            	array(
            		'default' => 'Npcink出品',    //默認值
            	)
            );
            //添加第一個設置節的第一個設置控件
            $wp_customize->add_control('aaa',
            	array(
            		'label' => '第一個設置節的第一個設置標題',
            		'section' => 'sections_text_demo',    //填入設置節的ID
            		'type' => 'text',
            	)
            );
    		
    		///////////////////////////////////////////////////////////////////////////////////////////////////
    		//添加第一個設置節的第二個設置
            $wp_customize->add_setting( 'bbb',    //(必填)用作ID的唯一類似slug的字符串。默認值:無
            	array(
            		'default' => '',                          //可選。如果數據庫中沒有值,則關聯控件中的默認值。默認值:空白
    				'transport' => 'refresh',                 //可選。定義實時預覽的更新方式。默認值:刷新。
    				'type' => 'theme_mod',                   // 可選 'theme_mod' or 'option'. 默認: 'theme_mod'
            	//	'sanitize_callback' => 'skyrocket_text_sanitization'   //可選的。在將輸入數據保存到數據庫之前將用于清除輸入數據的函數的名稱
            	)
            );
            //添加第一個設置節的第二個設置的控件
            $wp_customize->add_control( 'bbb',//必填:自定義控件對象或**與此控件關聯的設置的ID**。默認值:無
            	array(
            		'label' => __( '第一個設置節的第二個設置標題' ),          //可選:將顯示設置的標題,默認:空白
            		'description' => esc_html__( '可以輸入的格式見代碼注釋' ),//可選:描述
            		'section' => 'sections_text_demo',               // 必填:填入設置節的ID
            		'priority' => 10,                       // 必填:確定控件在該部分中的顯示順序。默認值:10
            		'type' => 'text',                      // 必填:要顯示的控件類型。類型可以是文本,電子郵件,URL,數字,隱藏或日期。默認值:"文本"
            		'capability' => 'edit_theme_options', // 可選:根據用戶的權限級別顯示或隱藏控件。通常從設置的功能派生。默認值為"edit_theme_options"
            		'input_attrs' => array(              // 可選:控件輸出的定制輸入屬性列表。僅用于文本區域和輸入字段。默認值:空白
            			'class' => 'my-custom-class',
            			'style' => 'border: 1px solid rebeccapurple',
            			'placeholder' => __( 'Enter name...' ),
            		),
            	)
            );
                
    		///////////////////////////////////////////////////////////////////////////////////////////////////
    
    		
    		//添加第二個設置節(文本節)
    		$wp_customize->add_section('sections_demo',       
    		array(                
    			'title'     => '第二個設置節',             
    			'description' => '第二個設置節詳細補充',     
    			'panel' => 'npcink_options',                 
    		) );
    		/////////////////////////////////////////////////////////////////////////////////////////////////
    		//添加第二個設置節的第一個設置
            $wp_customize->add_setting('ccc',
            	array(
            		'default' => 'Npcink',
            	)
            );
            //添加第二個設置節的第一個設置控件
            $wp_customize->add_control('ccc',
            	array(
            		'label' => '第二個設置節的第二個設置標題',
            		'section' => 'sections_demo', 
            		'type' => 'text',
            	)
            );

    有啥規律?

    面板 → 節 → 設置、控件

    怎么設置?

    請您在主題的自定義中進行設置。

    怎么使用呢?

    在你需要的地方添加如下代碼:

    <?php echo get_theme_mod( 'aaa', 'Npcink榮譽出品' ); ?>
    <br>
    <?php echo get_theme_mod( 'bbb', 'Npcink榮譽出品' ); ?>
    <br>
    <?php echo get_theme_mod( 'ccc', 'Npcink榮譽出品' ); ?>
    怎么用WordPress Customize API添加原生設置?-WordPress開發

    支持哪些控件?

    • 輸入控件
    • 復選框控件
    • 選擇控件
    • 單選按鈕控件
    • 下拉頁面控件
    • Textarea控件
    • 顏色控件
    • 媒體控件
    • 圖像控件
    • 裁剪圖像控件
    • 日期時間控件

    添加更多類型請看這里:

    需要更多?

    如何在您自己的主題中利用主題定制器

    需要簡單的設置框架?

    Codestar Framework – 簡約實用的wordpress主題選項框架

    WordPress開發 – Options Framework輕量級后臺框架使用設置舉例

    給TA贊賞
    共{{data.count}}人
    人已贊賞
    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    ?
    購物車
    優惠劵
    搜索
    主站蜘蛛池模板: 在线观看国产一区| 高清一区二区三区| 乱中年女人伦av一区二区| 亚洲成av人片一区二区三区| 亚洲一区二区三区无码中文字幕| 国产乱码精品一区二区三区中文| 久久精品无码一区二区三区不卡| 国产精品无码一区二区在线观一| 日韩在线一区二区| 少妇激情一区二区三区视频| 久久国产精品免费一区二区三区 | 国产伦精品一区二区三区女| 国产精品免费综合一区视频| 无码夜色一区二区三区| 中文无码一区二区不卡αv| 日韩精品一区二区三区大桥未久 | 亚洲国产AV无码一区二区三区| 国产91一区二区在线播放不卡 | 一区二区三区电影在线观看| 无码日韩精品一区二区免费| 亚洲熟妇成人精品一区| 精品一区二区视频在线观看 | 性色AV 一区二区三区| 国产精品一区电影| 午夜精品一区二区三区在线视| 日本人的色道www免费一区| 日本一区二区三区在线观看视频 | 国产一区玩具在线观看| 亚洲av成人一区二区三区在线观看 | 精品国产免费一区二区三区香蕉| 精品少妇一区二区三区在线| V一区无码内射国产| 亚洲综合无码精品一区二区三区| 成人免费av一区二区三区| 国产日韩精品一区二区三区| 波多野结衣中文一区| 亚洲AⅤ无码一区二区三区在线| 久久久久人妻一区精品果冻| 国产麻豆精品一区二区三区v视界| 免费视频一区二区| 国产精品视频一区麻豆|