2012-03-08 28 views
1

我使用SilverStripe作爲CMS,現在我被卡住了,不知道如何從「頁面」對象訪問「標題」屬性。如何從「頁面」對象獲取「標題」屬性

我想:

$ Event.Trainer.Title

但它不工作。 「Trener」是「TrenerPage」對象。我如何訪問Trener-> Title屬性?

回答

3

您不能遍歷SilverStripe模板中的三個級別(至少在版本2.x中)。兩個是最大值。

你需要的是這樣的:

<% control Event %> 
    $Trainer.Title 
<% end_control %> 
0

你的問題似乎「培訓師」和「Trener」之間切換不一致,我猜其中之一是一個錯字?

如果該模板是用於希望顯示標題的頁面,則需要在模板中使用$Title,它將輸出呈現頁面的標題。

如果該模板不是您希望顯示標題的頁面,那麼就像xeraa所說的那樣,您應該使用一個控制塊。

0

標題直接在Page對象中。 只需使用$ Title即可。爲了幫助您處理Page對象中的所有可用方法,請轉到: http://doc.silverstripe.org/sapphire/en/reference/built-in-page-controls

由於問題並不十分清楚,因此我會針對另一個答案進行處理。 如果您從Page對象派生Trainer_Page,它仍然直接繼承$ Title屬性。除非您在Trainer_Page對象中自己覆蓋$ Title屬性,否則PHP會將其默認返回到父類。在這種情況下,只需使用$ Title。

由於$ title和$ Title不一樣,請注意這種情況。

祝你好運。