添加小鉛筆 -WordPress Customize API

    為自己的WordPress Settings API設置添加小鉛筆,方便用戶使用主題設置。

    我們使用WordPress Settings API添加完自己的選項后,為了方便主題用戶便捷的找到需要設置的地方,這個時候就可以給你的設置項目添加一個小鉛筆,主題用戶點擊小鉛筆即可直接到設置的地方,十分方便,跟著這次的wordpress開發教程一起來學習吧。

    在這里我以wordpress自帶的2019主題來做演示。

    效果實現:

    首先,我們需要添加一個設置項目,在2019主題根目錄下的functions.php文件的<?下面添加以下代碼:

    //添加自定義設置選項
    function npcink_customize_register( $wp_customize ) {
    
    	//給相關設置項目加小鉛筆
    
    	if ( isset( $wp_customize->selective_refresh ) ) {
    
    	//One
    	$wp_customize->selective_refresh->add_partial( 'npcink_sections_text_one', array(
    		'selector'        => '.1-1',
    		'render_callback' => 'lifet_customize_partial_npcink_sections_text_one',
    	) );
    
    	//Two
    		$wp_customize->selective_refresh->add_partial( 'npcink_sections_text_two', array(
    			'selector'        => '.1-2',
    			'render_callback' => 'lifet_customize_partial_npcink_sections_text_two',
    		) );
    		
    	}
    	
    
    	//-----------------------------------------------------------------------------
    	//添加主題設置面板,ID = npcink_options
    	$wp_customize->add_panel( 'npcink_options',
    	array(
    		'title'       => __( '添加小鉛筆演示', 'npcink' ),
    		'description' => __( 'Npcink出品', 'npcink' ),
    		'priority'    => 30,
    		'capabitity'  => 'edit_theme_options',
    	) );
    
    	//添加文本設置節,ID = npcink_sections_text
    	$wp_customize->add_section('npcink_sections_text',
    	array(                
    		'title'     => '文本設置',
    		'description' => '主題的文本設置',     
    		'panel' => 'npcink_options',
    	) );
    
    	//文字設置:one,ID = npcink_sections_text_one
    	$wp_customize->add_setting('npcink_sections_text_one',
    		array(
    			'default' => 'Npcink 榮譽出品',
    		)
    	);
    	$wp_customize->add_control('npcink_sections_text_one',
    		array(
    			'label' => '文本設置:One',
    			'section' => 'npcink_sections_text',
    			'type' => 'text',
    		)
    	);
    
    	//文字設置:two,ID = npcink_sections_text_two
    	$wp_customize->add_setting('npcink_sections_text_two',
    		array(
    			'default' => 'Npcink 榮譽出品',
    		)
    	);
    	$wp_customize->add_control('npcink_sections_text_two',
    		array(
    			'label' => '文本設置:Two',
    			'section' => 'npcink_sections_text',
    			'type' => 'text',
    		)
    	);
    
    }
    add_action( 'customize_register', 'npcink_customize_register' );
    

    保存上面的代碼,我們就可以在網站后臺 → 外觀 → 自定義中看到我們添加的新選項:添加小鉛筆演示。

    為了方便看到演示效果,我們在主題根目錄下的header.php文件底部添加以下代碼:

    <dl style="padding: 1em;">
        <dd class="1-1">1-1:<?php echo get_theme_mod( 'npcink_sections_text_one', 'Npcink榮譽出品' ); ?></dd>
        <dd class="1-2">1-2:<?php echo get_theme_mod( 'npcink_sections_text_two', 'Npcink榮譽出品' ); ?></dd>
    </dl>

    注意這里的 class :1-1、1-2

    效果如下圖:

    添加小鉛筆 -WordPress Customize API

    代碼解釋:

    如果您閱讀了我之前發布的文章,那么在這里您需要注意這幾點:

    一:

    在做效果演示時我給dd標簽添加了CSS,分別是1-1、1-2,這將有助于接下來的小鉛筆進行定位。

    二:

    我新添加了一段if判斷語句:

    	if ( isset( $wp_customize->selective_refresh ) ) {
    
    	//One
    	$wp_customize->selective_refresh->add_partial( 'npcink_sections_text_one', array(
    		'selector'        => '.1-1',
    		'render_callback' => 'lifet_customize_partial_npcink_sections_text_one',
    	) );
    
    	//Two
    		$wp_customize->selective_refresh->add_partial( 'npcink_sections_text_two', array(
    			'selector'        => '.1-2',
    			'render_callback' => 'lifet_customize_partial_npcink_sections_text_two',
    		) );
    		
    	}

    簡化后為:

    	if ( isset( $wp_customize->selective_refresh ) ) {
    
    	$wp_customize->selective_refresh->add_partial( '控件ID', array(
    		'selector'        => '添加的CSS',
    		'render_callback' => 'xxx_控件ID',
    	) );
    		
    	}

    這一段的意思就是給指定的CSS處添加小鉛筆。

    以上代碼均可正常使用,但其具體實現原理我是一概不知,僅供參考,如果能夠幫助到您那是最好啦。

    舉一反三,相信你已經知道了如何添加小鉛筆了,如果你還有疑問的話,歡迎在評論區留言交流。

    補充(參考):

    你搜callback?里的函數
    沒有那個是不起作用的添加小鉛筆 -WordPress Customize API
    這個callback?是要返回修改后前端展示的結果的

    基于?留的class?找元素直接替換內容
    你文章沒提這個?
    別人只寫個函數名?啥作用沒有

    這個??render_callback??跟?id?沒半毛錢關系

    完全是可以?自定義命名的

    Typecho

    MWordStar - 簡潔的 Typecho 雙欄博客主題

    2020-8-18 15:00:25

    怎么添加文章密碼保護功能? - WordPress教程

    2020-2-24 21:02:27

    ??
    Npcink上的部份代碼及教程來源于互聯網,僅供網友學習交流,若您喜歡本文可附上原文鏈接隨意轉載。
    無意侵害您的權益,請發送郵件至 1355471563#qq.com 或點擊右側 私信:Muze 反饋,我們將盡快處理。
    0 條回復 A文章作者 M管理員
      暫無討論,說說你的看法吧
    ?
    個人中心
    購物車
    優惠劵
    今日簽到
    有新私信 私信列表
    搜索
    主站蜘蛛池模板: 99久久精品国产一区二区成人| 国产suv精品一区二区6| 久久久久人妻精品一区三寸| 亚洲av成人一区二区三区观看在线| 日本一区二区三区日本免费| 国产精品免费一区二区三区| 麻豆AV无码精品一区二区| 亚洲日韩精品一区二区三区| 亚洲AⅤ无码一区二区三区在线| 午夜福利av无码一区二区| 亚洲福利精品一区二区三区| 亚洲色精品三区二区一区| 高清一区二区三区日本久| 久久久不卡国产精品一区二区| 日本高清一区二区三区| 激情内射亚洲一区二区三区爱妻| 久久免费精品一区二区| 亚洲综合av永久无码精品一区二区| 美女福利视频一区二区| 精品成人一区二区三区免费视频| 糖心vlog精品一区二区三区 | 一区在线观看视频| 国产女人乱人伦精品一区二区| 亚洲视频一区网站| 伊人久久精品一区二区三区| 亚洲综合色一区二区三区小说| 日韩人妻无码一区二区三区久久 | 日韩一区二区三区不卡视频| 一区二区三区视频| 精品一区二区三人妻视频| 韩国女主播一区二区| 精品视频在线观看一区二区三区| 色精品一区二区三区| 中文字幕国产一区| 久久精品一区二区三区四区| 亚洲一区二区三区无码国产| 国内自拍视频一区二区三区| 日韩精品一区二区三区毛片| 动漫精品专区一区二区三区不卡 | 久久91精品国产一区二区| 精品一区二区三区中文字幕|