我想在我的Footer.ss文件中包含版權信息的年份,用於我正在處理的Silverstripe項目。但是,我不明白爲什麼$ Now.Year不起作用。我可以看到版權符號和版權文本,但不是年份。有沒有另一種方法來顯示一年?
<div class="Footer-Text">
$SiteConfig.Footerlinks
<p> © $Now.Year $SiteConfig.Copyright</p>
</div>
我想在我的Footer.ss文件中包含版權信息的年份,用於我正在處理的Silverstripe項目。但是,我不明白爲什麼$ Now.Year不起作用。我可以看到版權符號和版權文本,但不是年份。有沒有另一種方法來顯示一年?
<div class="Footer-Text">
$SiteConfig.Footerlinks
<p> © $Now.Year $SiteConfig.Copyright</p>
</div>
您是否啓用了開發模式?我想知道是否一個錯誤被壓制在這裏(可能date.timezone PHP設置)
編輯:另外,你是否包括設置任何變量?例如<%包括頁腳現在=真%>
我會發表評論,而不是答案,但我沒有足夠的代表:(
不,我在調用頁腳包含時沒有變量。它只是<%包含頁腳%> 我不知道是否啓用了開發模式。我是Silverstripe的新手,所以我不知道這件事。我將不得不考慮它。 – 2015-03-31 13:36:52
$現在是全球性的,應該不顧上下文的任何地方工作/範圍,無論是包括/電子郵件或不
<%控制%>應該也永遠不會被使用,直到永遠。(在3.x中 - 這是2.4.x的和較低的代碼)
@kinglozzer超過。可能是正確的。它的短片是$ Now.Year 確實工作。
http://api.silverstripe.org/3.1/source-class-SS_Datetime.html#199-203
但(見返回值):
http://php.net/manual/en/function.date.php
PHP自己的日期( 'YMD H:I:S')將發出一個錯誤 - 這只是一個警告(所以執行繼續),同時返回false。您沒有看到這個,因爲您的網站將處於直播模式。有關更多信息,請參閱silverstripe文檔(同樣,rep等級會張貼適用的鏈接)。
這意味着你有一個服務器配置問題,而不是silverstripe問題。
我將不得不在晚些時候考慮......你可能是正確的。謝謝! – 2015-03-31 14:40:25
嘗試'<%control Top%> $ Now.Year <%end_control%>'作爲'$ Now'的範圍在'Top'內 – naththedeveloper 2015-03-31 13:18:25
$ Now.Year在這裏工作。檢查範圍 - 你是在頂部還是在循環或與?您可以使用$ Top.Now.Year查看它。還要檢查HTML源代碼以驗證它不是樣式問題。 – munomono 2015-03-31 13:21:33
我試過<%control Top%> $ Now.Year <%end_control%>但沒有奏效。我用$ Top.Now.Year替換了$ Now.Year,但在HTML源代碼中沒有看到任何內容 - 只是一個空的空間。 – 2015-03-31 13:25:32