簡體   English   中英

WordPress側邊欄小部件無法保留

[英]WordPress Sidebar widgets not staying

WordPress 3.5

我通過WordPress register_sidebar文檔構建了一個動態邊欄,如下所示:

$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);

問題是,當我進入管理部分的小部件部分以將小部件拖放到側欄上時,一切正常。 如果我刷新或離開該頁面然后返回,則小部件不存在,並且側欄為空。

它們也不會出現在前端。

有想法嗎?

在這里發布內容是因為評論太長,而不是真正的答案。

然后,您會看到類似<?php dynamic_sidebar('Main Side Bar'); ?> <?php dynamic_sidebar('Main Side Bar'); ?>在您的模板中?

我有兩次看到WordPress小部件消失了,這兩者都與通過Ajax執行所有操作的頁面有關。 第一種是當您僅查看外觀>>窗口小部件並且長時間不打開頁面時,WordPress會退出您的頁面,但即使沒有任何保存,頁面仍會像往常一樣運行。

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

另外,如果創建多個窗口小部件區域,請確保將它們添加到functions.php中其他窗口小部件的下方。 WordPress根據其ID號(而不是根據其名稱或您設置的ID)將小部件放在適當的區域。 因此,如果“ ABC”是您注冊的第一個小部件區域,然后放入一些小部件,然后在functions.php中的另一個小部件上方注冊一個新的區域“ DEF”,則ABC現在為空。

如果這些情況都不適合您,則您可能希望嘗試更改ID以僅使用連字符。 然后開始查看您的錯誤日志,禁用所有插件,確保mod_security不會攔截該帖子,諸如此類。

這是個老問題,但是3年后的今天,即時通訊仍然遇到問題,我的解決方法是:

將側邊欄數組的idcameCase更改為snake_casespinal-case

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM