簡體   English   中英

在SilverStripe中自定義導航菜單

[英]Customizing Navigation Menu in SilverStripe

我在SilverStripe論壇中提出了這個問題,但是一天沒聽到。 http://silverstripe.org/customising-the-cms/show/263604#post263604

我正在將基於PHP的靜態站點+ Wordpress遷移到SilverStripe。

在靜態頁面中,我們自定義標題本身。 我們有兩種類型的登錄名。 客戶和會員。

在今天的靜態站點中,我們執行以下操作:

<? require("_header_top.html"); ?> 
<? if (isset($display_affiliate_link) && $display_affiliate_link == true) { 
require("_header_middle_affiliate.html"); 
} else { 
require("_header_middle.html"); 
} ?> 
<? require("_header_bottom.html"); ?> 

這是會員和客戶部分之間導航菜單中的唯一區別。

我嘗試沿着不同的布局路徑前進。 但我不喜歡它,因為除此布局外,布局看起來保持99%相同。

我嘗試了以下技巧,但效果不錯,但我一點都不喜歡。

<% if MenuTitle = Affiliate %> 
<a href="/affiliate_login>affiliate login</a> 
<% end_if %> 
<a href="/subscriber_login>subscriber login</a> 

關於如何更好地實現此目標或實現此目標的更好建議的任何建議?

維克拉姆

我不明白您的做法有什么問題。其他解決方法是:

  • 為您的SiteTree頁面對象添加“類型”屬性,以便在客戶和會員之間進行區分。
  • 在SiteTree對象的控制器內部,您可以使用“自定義”函數來接收數組或對象,並調用“ renderWith”函數,該函數也可以在控制器內部使用,以使用模板文件(.SS文件)。 這樣,您的客戶和會員的布局將以不同的.SS文件分隔。

暫無
暫無

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

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