2012-12-16 70 views
0

的WordPress 3.5WordPress的側邊欄小工具不能呆在

我通過WordPress register_sidebar documentation建立動態側邊欄,看起來像:

$sidebar = array(
    'name'   => 'Main Side Bar', 
    'id'   => 'Aisis_Side_Bar', 
    'before_widget' => '<li>', 
    'after_widget' => '</li>', 
    'before_title' => '<h2>', 
    'after_title' => '</h2>' 
); 

register_sidebar($sidebar); 

的問題是,當我進入管理部分的小部件部分將小部件拖放到側邊欄上,一切正常。如果我刷新或離開該頁面,並返回小部件消失,邊欄是空的。

他們也沒有出現在前端。

想法?

+0

這沒有什麼錯,唯一不同的是我看到的是你的ID使用下劃線而不是連字符來分隔單詞,但如果這樣做有所幫助,我會感到驚訝。你把這些代碼放在哪裏? – Michael

+0

functions.php文件 – TheWebs

回答

1

因爲發表評論太長,所以不是真正的答案。

然後你的模板中有類似<?php dynamic_sidebar('Main Side Bar'); ?>的東西?

有兩次我見過WordPress小部件消失了,兩者都與通過Ajax處理所有內容的頁面有關。第一種情況是,當您只查看外觀>>小部件並且將頁面打開很長一段時間時,WordPress會將您標記出來,但頁面始終保持正常狀態,即使沒有任何內容可以保存。

另一次是有多個管理員。每次單擊保存任何小部件時,所有小部件及其選項都會保存,它不僅會保存您單擊保存的小部件的信息。因此,如果另一個人以管理員身份登錄並正在查看外觀>>小工具,那麼您將小工具保存到「主工具欄」,除非刷新外觀>>小工具,否則它們不會顯示在其屏幕中。所以,現在如果他們點擊保存在任何窗口小部件上,它將「主窗口欄」保存爲空並「擦除」您的窗口小部件。

此外,如果您創建了多個窗口小部件區域,請確保將它們添加到functions.php中的其他窗口下方。 WordPress根據其ID號將小部件放在適當的區域,而不是基於它的名稱或您設置的ID。因此,如果「ABC」是您註冊的第一個窗口小部件區域,那麼您將放置一些窗口小部件,然後註冊一個新的區域「DEF」以上另一個在functions.php中,ABC現在將爲空。

如果這些情況都不適用於您,您可能需要嘗試更改ID以使用連字符,而不僅僅是它。然後開始查看錯誤日誌,禁用所有插件,確保mod_security不攔截帖子,類似的東西。

+0

沒有一個解決了這個問題,在錯誤日誌中沒有錯誤。這可能是一個JavaScript問題? – TheWebs

0

老問題,但今天之後3年,IM仍然有麻煩了,我的解決辦法:

更改側邊欄陣列的idcameCase喜歡的東西snake_casespinal-case