2013-12-13 22 views
1

我有一個問題關於WordPress的註冊第二個欄的一個新的子菜單,我將使用我的網站上的一些博客,帖子。WordPress的註冊新的側邊欄問題

我(一個特定頁面僅上)閱讀如何註冊一個新的側邊欄!在下面的代碼的前三行中,您會看到我的主題function_php中保存了哪些內容,並且它似乎可行,但我不確定是否正確,但是後端向我顯示了窗口小部件扇區中的2個邊欄區域。那裏沒有我記得)

這個我包括:

**// If Dynamic Sidebar Exists 
if (function_exists('register_sidebars')) 
register_sidebars(2);** 
{ 
// Define Sidebar Widget Area 1 
register_sidebar(array(
    'name' => __('Widget Area 1', 'html5blank'), 
    'description' => __('Description for this widget-area...', 'html5blank'), 
    'id' => 'widget-area-1', 
    'before_widget' => '<div id="%1$s" class="%2$s">', 
    'after_widget' => '</div>', 
    'before_title' => '<h3>', 
    'after_title' => '</h3>' 
)); 

// Define Sidebar Widget Area 2 
register_sidebar(array(
    'name' => __('Widget Area 2', 'html5blank'), 
    'description' => __('Description for this widget-area...', 'html5blank'), 
    'id' => 'widget-area-2', 
    'before_widget' => '<div id="%1$s" class="%2$s">', 
    'after_widget' => '</div>', 
    'before_title' => '<h3>', 
    'after_title' => '</h3>' 
)); 

// Define Sidebar Widget Area 3 
register_sidebar(array(
    'name' => __('Widget Area 3', 'html5blank'), 
    'description' => __('Description for this widget-area...', 'html5blank'), 
    'id' => 'widget-area-3', 
    'before_widget' => '<div id="%1$s" class="%2$s">', 
    'after_widget' => '</div>', 
    'before_title' => '<h3>', 
    'after_title' => '</h3>' 
)); 

}

現在,我是一個有點困惑,因爲在我的網站的拳頭設置有一個widget面積1 !包含頭部菜單,然後是小部件區域2!其中包含標準主題側邊欄:serach字段和一些部件化文本:P.

現在我不知道如何獲得第二個欄完全正確registred,以及如何將程序在PHP中拷入sidebar2.php

在這裏看到:

<!-- Sidebar --> 
<aside id="sidebar"> 

<div class="sidebar-widget3"> 
<?php if(!function_exists('dynamic_sidebar2') || !dynamic_sidebar('widget-area-3')) ?> 
</div>  
</aside> 
<!-- /Sidebar --> 

我應該把小工具(搜索 - 字段和文本)在我的後端在邊欄區域或應該留在小工具區域?

它對我來說是一個一般的理解問題,我希望有人能幫助我,因爲我是一個血腥的初學者。 !

TNX很多[這是實際工作的設置,這是混淆了我,我喜歡這個步驟,儘快解決...

回答

0

首先,刪除此行:register_sidebars(2);**
這是不必要的,並且可能搞砸了。此外,您的功能被命名爲register_sidebar s,末尾帶有「s」。既然你使用html5blank(我也是這樣),我可以看到這是錯誤的。

我的功能看起來像這樣,它工作得很好。只需複製register_sidebar數組即可獲得所需的多個側邊欄。當涉及到「我應該把這個和那個東西放在哪裏」時,這取決於你。

if (function_exists('register_sidebar')) { 
    register_sidebar(
     array(
      'name'   => __('Widget Area 1', 'html5blank'), 
      'description'  => __('Description', 'html5blank'), 
      'id'   => 'widget-area-1', 
      'before_widget'  => '<div id="%1$s" class="%2$s">', 
      'after_widget'  => '</div>', 
      'before_title'  => '<h3>', 
      'after_title'  => '</h3>' 
     ) 
    ); 
} 

當涉及到的sidebar.php,由於某種原因,你可以把它叫做dynamic-sidebar2,這是不存在的功能 - 除非你已經創造了它。
只需將它改成這樣:

<div class="sidebar-widget"> 
    <?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('widget-area-1')) ?> 
</div> 

<div class="sidebar-widget"> 
    <?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('widget-area-2')) ?> 
</div> 

<div class="sidebar-widget"> 
    <?php if(!function_exists('dynamic_sidebar') || !dynamic_sidebar('widget-area-3')) ?> 
</div> 

我希望這回答了你的問題。如果沒有,留下評論,我會嘗試修改我的答案。

+0

OP,我的答案是否解決了它? –