2017-02-28 5 views
0

phpレイアウトテンプレートに外部CSS/jsファイルを追加する方法を教えてください。 私の現在のコードが下に添付されています。ここでPHPはレイアウトテンプレートに外部CSSとjsファイルを追加します

Class Template{ 
    public function header() //it loads header.php file 
    public function footer(){ 
    $footer = file_get_contents('footer.php'); 
     //this function load js file 
     $search[] = "%__script__%"; 
     if(isset($this->script) && file_exists($this->script)){ 
     $replace = "<script src=\"$this->ready_script\">"; 
     } 
     return str_replace($search, $replace, $header); 
    } 
} 

はfooter.phpファイルには、この機能は、すべてのページに細かいコールのヘッダーとフッターの機能を働く

</body> 
</html> 
%__script__% 

です。この

マイレイアウトファイルなどの しかし、私は1つのレイアウトファイルを維持したい

$temp = new Template(); 
echo $temp->header(); 
__CONTENT GOES HERE WHICH IS LOADED FROM AJAX__ 
echo $temp->footer(); 

私はスクリプトを使用して定義されたレイアウトファイルのHTML出力の最後

*** Update *** 

でjsの外部ファイルを追加したいです$ temp-> script_src = "jsファイル名"のようなコンテンツページ(コンテンツページ)内のオブジェクト。 script_srcが見つかった場合、それはあなたの質問は私には少し不明確である

** My file structure ** 
App 
    -- header 
    -- content (in content external js file url defined by $temp->script property 
    -- footer 
    -- if $temp->script property found then load js using <script> tag 

答えて

0

htmlファイルの末尾にレイアウトファイル(のlayout.php)にロードされますが、あなたが追加したい場合はjsの外部ファイルが追加しますあなたのHTML出力の最後に、次のようなものを試してみてください:

document.addEventListener("DOMContentLoaded", function() { 
    var bodyLoaded = document.body, 
     url = "http://yourexternal.com/script.js", 
     script = document.createElement('script'); 
    script.type = "text/javascript"; 
    script.src = url;  
    bodyLoaded.appendChild(script); 
}); 
+0

ありがとうございます。スクリプトは、$ temp-> script_src = "jsファイル名"のようなコンテンツページ(コンテンツページ)内のオブジェクトを使用して定義されます。 script_srcが見つかった場合は、htmlファイルの最後にあるレイアウトファイル(layout.php)にロードされます。 – Vam

関連する問題