如何删除joomla中的所有JavaScript?

时间:2012-07-17 07:12:11

标签: php joomla

我在这里使用代码

<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时,如何修复它删除模板joomla中标题中的所有javasccript

5 个答案:

答案 0 :(得分:5)

删除可在模板中使用的脚本:

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

答案 1 :(得分:4)

您可以从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" />之前应用任何方法。它将删除所有脚本。

希望这会对你有所帮助。

答案 2 :(得分:1)

我是这样做的:

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

在此行之前

<jdoc:include type="head" />

答案 3 :(得分:0)

如果我理解你的问题,你想删除head标签之间的所有javascript吗?

如果是这样,您需要在joomla_root\templates\中找到模板的文件夹并在其中打开index.php(例如:joomla_root\templates\beez5\index.php)(我建议先备份)。然后删除以{:1}开头的head标记之间的所有内容:

<script type="text/javascript"

您可能还需要删除$doc->addScript(行..

答案 4 :(得分:0)

您提供的行从另一个文件获取数据,因此它将是包含嵌入javascript文件的代码行的另一个文件。只需搜索

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

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

你可能也会发现这样的东西

$document->addScriptDeclaration($variable);