2012-07-17 57 views
2

我在這裏使用的代碼如何刪除joomla中的所有javascript?

<head> 
... 
<?php 
$user =& JFactory::getUser(); 
if ($user->get('guest') == 1) { 
    $headerstuff = $this->getHeadData(); 
    $headerstuff['scripts'] = array(); $this->setHeadData($headerstuff); 
} 
?> 
<jdoc:include type="head" /> 
</head> 

但是,當運行代碼模板加載所有的JavaScript,如何解決它刪除所有javasccript在頭模板的Joomla

+0

這是你需要的嗎?你想把所有的js調用移動到頁面的頁腳? - 所有這些類型的優化都有大量的本地joomla插件 – shershen 2012-07-17 11:02:34

回答

0

如果我明白你的問題正確,要刪除所有的JavaScript之間的標籤是head

如果是這樣,您需要在joomla_root\templates\中找到您的模板文件夾並在其中打開index.php(例如:joomla_root\templates\beez5\index.php)(我建議先備份)。然後head標籤與開始之間移除一切:

<script type="text/javascript"

您可能還需要刪除$doc->addScript(線..

0

您提供的線從另一個文件中獲取數據,所以這將是其他包含嵌入JavaScript文件的代碼行的文件。只需搜索

<script type="text/javascript"></script> 

$document->addScript(.....); 

,你可能還會發現這樣的事情

$document->addScriptDeclaration($variable); 
4

要刪除腳本,你可以在你的模板中使用:

$doc = JFactory::getDocument();  
unset($doc->_scripts[$this->baseurl.'/media/system/js/mootools-core.js']); 
1

我這樣做了:

$doc = JFactory::getDocument(); 
$doc->_scripts = array(); // just clear array 

此行

<jdoc:include type="head" /> 
3

您可以刪除你的Joomla網站不需要的腳本之前。你可嘗試這樣

<?php 
     //get the all the script declarations 
     $document = JFactory::getDocument(); 
     $headData = $document->getHeadData(); 
     $scripts = $headData['scripts']; 

     //if you want to remove all the script 
     unset($scripts); 

     //if you want to remove specific file then try like this 
     unset($scripts['/media/system/js/mootools-core.js']); 
?> 

或者嘗試這樣

//if you want to remove all the script 
<?php unset($this->_scripts); ?> 

//if you want to remove specific file then try like this 
<?php unset($this->_scripts['/media/system/js/mootools-core.js']); ?> 

您可以<jdoc:include type="head" />前申請的任何方法。它將刪除所有腳本。

希望這會幫助你。

相關問題