2016-09-28 58 views
1

喜同胞程序員,WordPress的dynamic_sidebar不解析,刪除改變

我是比較新的WordPress的,因爲我通常使用Typo3的,所以我有一個關於在WP定製工具條的問題。

我在我的functions.php下面的代碼

function custom_sidebars() 
{ 

    register_sidebars(4, array 
    (
    'name' => __('Panel Startseite %d', 'me'), 
    'id' => 'panel-home-%d', 
    'description' => 'Widget Position for home panel', 
    'class' => 'panel-sidebar', 
    'before_widget' => '<div class="widget-panel-%d">', 
    'after_widget' => '</div>', 
    'before_title' => '<h2 class="panel-title">', 
    'after_title' => '</h2>' 
)); 

    $args2 = array 
    (
    'name' => __('Short Bio Sidebar', 'me'), 
    'id' => 'shortbio-id', 
    'description' => 'Widget Position for short bio', 
    'class' => 'shortbio-sidebar', 
    'before_widget' => '<div class="widget-bio">', 
    'after_widget' => '</div>', 
    'before_title' => '<h2 class="widgettitle">', 
    'after_title' => '</h2>' 
); 
    register_sidebars(1, $args2); 

} 

add_action('widgets_init', 'custom_sidebars'); 

我想在我的主頁,並在頁腳另一個小字段添加4塊板的信息爲筆者添加生物或改變它。

這裏是我的index.php我的代碼

<div id="main"> 
    <div class="wrapper"> 
    <div class="col-sm-6"> 
     <div class="inner"> 
     <?php dynamic_sidebar('panel-home-1'); ?> 
     </div> 
    </div> 
    <div class="col-sm-6"> 
     <div class="inner"> 
     <?php dynamic_sidebar('panel-home-2'); ?> 
     </div> 
... and so on 

相同的實現是在footer.php在給定位置。

我的問題是:

  • 內容我通過後臺菜單主題添加 - >小部件不顯示,且被刪除下一次我打開後端。
  • 有在的wp-content /無的debug.log錯誤,我固定所有常見的激活WP-config.php文件中的選項後

我怎樣才能解決這個問題,什麼是我的基本思路錯誤?

最好的問候sKylo

回答

0

你的代碼都很好。只有一個錯誤,您使用%d連接您的id後的小數。但是這不是必須的,因爲%d會自動添加到提供的ID中。請在此答案結尾處查找代碼鏈接。

所以,我從你的代碼的ID部分刪除%d,現在它的工作原理。

解決方案:

function custom_sidebars() 
{ 

    register_sidebars(4, array 
    (
    'name' => __('Panel Startseite %d', 'me'), 
    'id' => 'panel-home', 
    'description' => 'Widget Position for home panel', 
    'class' => 'panel-sidebar', 
    'before_widget' => '<div class="widget-panel">', 
    'after_widget' => '</div>', 
    'before_title' => '<h2 class="panel-title">', 
    'after_title' => '</h2>' 
)); 

    $args2 = array 
    (
    'name' => __('Short Bio Sidebar', 'me'), 
    'id' => 'shortbio-id', 
    'description' => 'Widget Position for short bio', 
    'class' => 'shortbio-sidebar', 
    'before_widget' => '<div class="widget-bio">', 
    'after_widget' => '</div>', 
    'before_title' => '<h2 class="widgettitle">', 
    'after_title' => '</h2>' 
); 
    register_sidebars(1, $args2); 

} 

add_action('widgets_init', 'custom_sidebars'); 

<div id="main"> 
    <div class="wrapper"> 
    <div class="col-sm-6"> 
     <div class="inner"> 
     <?php dynamic_sidebar('panel-home'); ?> 
     </div> 
    </div> 
    <div class="col-sm-6"> 
     <div class="inner"> 
     <?php dynamic_sidebar('panel-home-2'); ?> 
     </div> 
... and so on 

你不需要%d增加register_sidebars的ID。請閱讀codex, 它說:

「%d」被自動添加到第一個之後提供的「id」值;例如「邊欄-1」,「邊欄-2」,「邊欄-3」等。

+0

thx很多隊友!它現在按預期工作。但是等等,小部件管理界面上有很多不活動的邊欄。我如何刪除它們,也許隱藏它們? – Marc

+0

不客氣。點擊小部件,它會顯示你在它的底部刪除選項。 –

+0

如果答案解決了您的問題,請不要忘記將其作爲正確答案進行檢查。接受答案可以幫助其他人跟蹤您的問題已解決問題。 –