WordPress主題制作進(jìn)階#9使用主題小工具widget

這節(jié)我們學(xué)習(xí)使用小公具
我們現(xiàn)在有個(gè)側(cè)邊欄,但是其內(nèi)容都是靜態(tài)的,我們把側(cè)邊欄替換成動(dòng)態(tài)的小公具。在博客頁(yè)面和任何其他頁(yè)面上,除了我們稍后將創(chuàng)建的自定義主頁(yè)之外,這將是唯一的小工具。我們將在functions文件中添加小工具的顯示位置。

打開(kāi)functions.php,然后找到after_theme_setup這行代碼;在這行代碼下方添加一些代碼,這些代碼用來(lái)設(shè)置小工具位置。

//Widget Locations
function init_widgets($id){
    register_sidebar(array(
        'name' => 'Sidebar',
        'id' => 'sidebar',
        'before_widget' => '',
        'after_widget' => '',
        'before_title' => '',
        'after_title' => ''
    ));
}
add_action('widgets_init', 'init_widgets');

現(xiàn)在我們跳轉(zhuǎn)到index.php中,查看側(cè)邊欄部分的代碼。

<div class="side">
    <div class="block">
    <h3>側(cè)邊欄</h3> 

根據(jù)這部分代碼來(lái)修改剛剛添加到functions.php中的代碼:

'before_widget' => '<div class="block side-widget">', 
'after_widget'  => '</div>',
'before_title'  => '<h3>',
'after_title'   => '</h3>' 

然后再回到index文件中,修改側(cè)邊欄部分代碼:

<div class="side">
    <?php if(is_active_sidebar('sidebar')) : ?>
    <?php dynamic_sidebar('sidebar'); ?>
    <?php endif; ?>
</div>

回到前端查看首頁(yè),側(cè)邊欄那里什么都沒(méi)有,因?yàn)槲覀儧](méi)有添加任何小部件

側(cè)邊欄空了

現(xiàn)在我們把所有文件中出現(xiàn)的靜態(tài)側(cè)邊欄代碼全部替換,archive、company-template、single、search、page、等頁(yè)。
現(xiàn)在到后臺(tái)打開(kāi)外觀 -> 小工具頁(yè)面,我們添加一個(gè)自定義文本小工具,放置一個(gè)標(biāo)題My Text Widget。 然后,我只需在內(nèi)容中粘貼一兩句話,然后點(diǎn)擊保存:

文本小工具

回到前端刷新。

widget出現(xiàn)了

回到后臺(tái),我們點(diǎn)擊文本選項(xiàng),然后我們可以在內(nèi)容里添加代碼,我們來(lái)添加一個(gè)按鈕,只是為了美觀,并不給按鈕添加功能。 你可以在自定義文本小部件中放置任何自己喜歡的內(nèi)容:

自定義內(nèi)容

之后我們?cè)偬砑右粋€(gè)分類目錄小工具,點(diǎn)擊保存,然后到前端刷新頁(yè)面

分類目錄

我們打開(kāi)style.css文件,為分類目錄添加一些樣式:

.side-widget {
    margin-bottom: 20px;
}
.side-widget li {
    list-style: none;
    line-height: 2.1em;
    border-bottom: 1px dotted #ccc;
}

保存代碼,回到前端刷新,現(xiàn)在看起來(lái)好多了:

分類

接下來(lái),我將其余的小工具添加到functions.php或其他小工具位置,即使我們?cè)诒竟?jié)中不會(huì)這樣做。 在下一節(jié)中,我們將使用這些小部件創(chuàng)建自定義主頁(yè)。

在functions.php中找到我們前面添加的 init_widgets()函數(shù),將函數(shù)內(nèi)部代碼塊復(fù)制粘貼4遍,然后修改剛剛粘貼的代碼塊,替換它們的名字和相應(yīng)的類名,代碼如下:

//Widget Locations
function init_widgets($id){
    register_sidebar(array(
        'name' => 'Sidebar',
        'id' => 'sidebar',
        'before_widget' => '<div class="block side-widget">', 
        'after_widget'  => '</div>',
        'before_title'  => '<h3>',
        'after_title'   => '</h3>' 
    ));

    register_sidebar(array(
        'name' => 'Showcase',
        'id' => 'showcase',
        'before_widget' => '<div class="showcase">', 
        'after_widget'  => '</div>',
        'before_title'  => '<h3>',
        'after_title'   => '</h3>' 
    ));

    register_sidebar(array(
        'name' => 'Box1',
        'id' => 'box1',
        'before_widget' => '<div class="box">', 
        'after_widget'  => '</div>',
        'before_title'  => '<h3>',
        'after_title'   => '</h3>' 
    ));

    register_sidebar(array(
        'name' => 'Box2',
        'id' => 'box2',
        'before_widget' => '<div class="box">', 
        'after_widget'  => '</div>',
        'before_title'  => '<h3>',
        'after_title'   => '</h3>' 
    ));

    register_sidebar(array(
        'name' => 'Box3',
        'id' => 'box3',
        'before_widget' => '<div class="box">', 
        'after_widget'  => '</div>',
        'before_title'  => '<h3>',
        'after_title'   => '</h3>' 
    ));
}
add_action('widgets_init', 'init_widgets');

這些新復(fù)制粘貼的代碼決定了下一節(jié)課,定制主頁(yè)時(shí)一些小工具的顯示位置?,F(xiàn)在我們返回到后臺(tái)小工具區(qū)域,會(huì)看到多出幾個(gè)小工具顯示區(qū)域:

顯示位置

如果我們現(xiàn)在把東西放進(jìn)去,什么都不會(huì)發(fā)生,因?yàn)槲覀兊哪0逯袥](méi)有它們。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 這一章節(jié),我們學(xué)習(xí)如何在主題中創(chuàng)建窗口小工具。 我們將有一個(gè)小工具位置,這將位于側(cè)邊欄中。1、打開(kāi)index.ph...
    埼玉是個(gè)逗B閱讀 2,631評(píng)論 1 1
  • 寶貝兒,今天是你出生的第六天,非常乖的一天,沒(méi)有很多哭鬧,餓了就吃,飽了就睡,但是吃的次數(shù)少了,吃的多了,一覺(jué)睡三...
    3237f5d4b965閱讀 176評(píng)論 0 0
  • 11月份,我看的書是周一清晨的領(lǐng)導(dǎo)課。以前做一線客服的時(shí)候亞沛推薦我看過(guò)這本書,當(dāng)時(shí)看的時(shí)候并不能讓我產(chǎn)生啟...
    一把青wx閱讀 910評(píng)論 2 5
  • -1- 強(qiáng)烈的震感再次傳來(lái)的時(shí)候小剛也只是躺在地上翻了個(gè)身,就當(dāng)是老子坐了趟進(jìn)山的拖拉機(jī)他心里這樣想著,就連眼睛都...
    花猴閱讀 536評(píng)論 7 10
  • 【六項(xiàng)精進(jìn)打卡】 2018.6.22 姓名:陳崗 企業(yè)名稱:上海孚因流體動(dòng)力設(shè)備股份有限公司 打卡第61天 【知~...
    我心依舊_79e2閱讀 61評(píng)論 0 0

友情鏈接更多精彩內(nèi)容