2011-06-04 31 views
1

我正在設置我的第一個drupal(6)站點,到目前爲止我喜歡系統。在特定節點/模塊上隱藏右側欄

但是現在我遇到了一個問題:爲內容提供更多空間我想隱藏右邊欄(使用導航菜單等)在每個頁面上從特定模塊(或者也可以:對於來自模塊的特定節點/視圖)

我想出的唯一方法是向模塊CSS文件中添加一些CSS,但這對我來說似乎並不乾淨,因爲我需要重做它每個更新(也是該模塊使用5 CSS文件的不同意見)

有沒有更好的方式來做到這一點?

要明確:我不想只是藏在一個塊,我想隱藏整個側邊欄

回答

2

嗯。這是一個自定義模塊還是常用的東西?有些模塊允許您爲它們創建自定義tpl.php文件(請參閱theming guide)。這可能會很快解決您的問題。

如果您正在主題節點,那麼它會更容易。您可以通過命名約定來主題特定類型的節點(也可以通過主題中的.tpl.php文件)。你可以看看how to do that here

絕對檢查主題指南,因爲您可能想創建自己的主題,而不是黑客攻擊核心主題之一(不推薦)。通常情況下,您可以將/ themes/garland複製到/ sites/all/themes/my_garland,將網站的主題切換爲該主題,然後進行所需的任何更改(否則每次更新內核時都必須重新應用更改)。

最後,如果您想在PHP中執行更復雜的操作(請參閱arg函數),您可以檢查路徑參數(對我而言,起初看起來很奇怪)。如果這是您的第一個Drupal站點,您可能還需要知道how to include css programatically

祝你好運! Drupal是一款有趣而有趣的產品。

+0

這是通常可用的日曆(http://drupal.org/project/calendar)模塊。但是,感謝所有的指針!我可以明確地處理這件事。 – dtech 2011-06-06 04:27:05

1

您可以爲網站(admin/build/block)中的每個塊和路徑配置塊可見性。在「配置」/「頁面特定的可見性設置」/「在特定頁面上顯示塊」下,可以將導航菜單塊設置爲不顯示某些特定路線。如果側邊欄沒有可顯示的塊,它將隱藏自身,從而爲內容留出更多空間。

+0

我試過,但菜單沒有隱藏。也許它在默認的主題上,但不在我的。 – dtech 2011-06-06 04:25:42

1

您可以使用Context模塊,除此之外,您可以爲每個塊/菜單設置規則,以顯示(或不顯示)我應該顯示的位置和時間。你也可以按照Josep的解釋方式來做到這一點,但是通過Context可以獲得更多選擇。

而作爲何塞普說,在沒有活躍在側邊欄塊應該自動消失,如果不檢查你的page.tpl.php中它應該有它這樣的事情:

<?php if ($right): ?> 
    <div id="sidebar-right"> 
     <div id="sidebar-right-inner"> <?php print $right; ?> </div> 
    </div> 
    <?php endif; ?> 

所以,如果有在Right區域沒有任何內容,它不顯示邊欄。也許你必須改變這個地區的名字,這取決於他們如何在你的模板中被調用。

0

我相信你已經得到了答案或解決問題的方法。

有一個簡單的方法來解決您的問題。這是a link