2011-12-19 56 views
0

我在我們的wp站點上見到了一個非常奇怪的現象(http://can.org.uk/training/training-diary)。展示奇怪行爲的頁面由single.php處理,並且該帖子中包含簡碼。短碼是:用短代碼很奇怪的wordpress行爲

[TCAL標籤=當然]

此短碼應生成包含當前類別內具有標記「當然」的所有文章的表。現在我知道代碼的工作原理與今天上午一樣,如果我在短代碼函數的底部添加一個回顯,那麼我可以看到相關的表已經被編譯並且被函數返回。

問題是,頁面顯示爲空白...什麼也沒有顯示出來。

此外,即使是陌生人,再次檢查後,現在整個網站顯示爲空白。如果我去主頁http://can.org.uk那麼我什麼都看不到 - 至少在我家裏的筆記本電腦上它顯示爲空白,在我的工作電腦上它似乎工作得很好(除了前面提到的頁面)。

我可以登錄儀表板,所有看起來都很好。 我沒有安裝任何插件。

有人知道這裏可能會出現什麼問題嗎?

+0

你看着你的PHP錯誤日誌文件或打開PHP錯誤? – CookiesForDevo 2011-12-19 20:48:16

回答

0

可能是「標題已發送」?嘗試在配置文件上打開WP DEBUG並設置錯誤報告給所有人,我很確定它會成爲頭部問題。

檢查,如果在普通的.php文件中,你的...?> <?php...之間沒有空格。

+0

打開調試 - 這我不知道:( - 出現了一些錯誤,其中之一是頭已經發送! – user1106252 2011-12-19 21:07:33

+0

儘量做你最好的解決它們一個接一個,頭髮allready發送將是 – 2011-12-19 21:09:49

+0

此外,更新您的原始文章並粘貼錯誤,可能會提供更多線索。如果您不想這樣做,錯誤末尾的行號將有助於修復並將此答案標記爲已接受。 – 2011-12-19 21:13:05

0

你應該總是返回短碼的輸出,而不是回顯它。如果你只是輸出它,Wordpress會照顧你的渲染。

這裏是一個簡單的,例如:

function test_function($attributes){ 
    return "<p><b>SHORTCODE TEST:</b> 
    <br/>these are the attributes ". 
    implode($attributes," ")."</p>"; 
}