[英]Stuck on include() in a wordpress theme
我將在wordpress主題文件中include()
一個PHP文件。 該文件為header.php,功能類似於:
<?php
error_reporting(E_ALL);
$filename = "path/to/file.php";
if (file_exists($filename)){
echo 'Ok';
include($filename);
} ?>
在結果html中打印“ Ok”,但之后立即停止輸出。 我使用了相對路徑和絕對路徑,結果相同。 我是否缺少有關家庭主題作品的內容?
文件權限還可以。
編輯: display_errors被設置在wordpress中。 我必須啟用它才能找到錯誤並解決。 這是致命的。
$filename = "file.php"; // First of all that needs to be quoted
// then its $filename, not filename. Missing $ before variable name
if (file_exists($filename)){
echo 'Ok';
include($filename);
}
好的,這里有2件事..如果在include語句后有一段代碼要求您將其更改為以下格式。
include('".$filename."');
其次,即使它是空白文件,也總是最好在其中加引號。
也可以讓此問題粘貼任何特定的錯誤日志..
如果在函數中,我還建議使用include_once()
而不是include()
,否則文件將被包含與函數調用一樣多的次數,這可能會導致錯誤並肯定導致服務器資源浪費。
另一個建議是,如果兩個文件調用者和被調用者都位於同一文件夾中,則使用完全不帶路徑的文件名。 在大多數情況下,這是一個更好的選擇(除非腳本的當前工作目錄與調用程序文件的目錄不同),因為當將文件移動到另一台服務器時,路徑可能會更改,從而導致腳本無法正常工作。 那時,您將需要逐個文件修復路徑。
如果您的文件在模板中,請按照以下說明添加文件
<?php include (TEMPLATEPATH . '/path/to/file.php'); ?>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.