2010-03-01 46 views
4

我正在使用面板覆蓋節點模板(節點/%節點)。我希望系統在加載節點時使用特定的變體。例如。節點123應該使用變體A,而節點223應該使用變體B.沒有一種選擇可以讓我確定在選擇規則下,我想知道是否應該使用PHP代碼,如果我這樣做,我應該如何去做編寫代碼?Drupal - 面板 - 根據NID使用變體

我知道使用面板節點的選項,但通過使用它,沒有簡單的方法來編輯節點,從而使其成爲不理想的選擇。

回答

3

在這種情況下,最簡單的事情可能是拋出一些PHP代碼。對專家組選擇規則進行擴展會更漂亮,但在這種情況下,這可能有點矯枉過正。

不管怎麼說像

return arg(1) == 123; 

應該這樣做。

你的問題可能是Drupal /面板緩存。我只是測試它,它工作正常。

+0

@googletorp感謝您的快速響應。 這實際上是我嘗試的第一件事,它不起作用,因此讓我想到如果它不是正確的方法開始。 – 2010-03-02 00:40:18

+1

return arg(1)== 123; 這個新的代碼工作!感謝堆的後續答案! – 2010-03-02 15:24:14

2

你需要做這樣的事情......

$nid = 11; 
    if (arg(0) == 'node' && arg(1) == $nid && !arg(2)) { 
    return true; 
    } 
    return false; 

要小心,只測試ARG(1)如前面的答案,這也將匹配用戶(用戶/ 123),以及任何接受數字參數的頁面視圖(文章/ 123)。

+0

你的答案比googletorp的完整得多。謝謝! – Roger 2015-09-16 11:59:10