2011-08-24 41 views
0

我正在开发一个Joomla系统插件,我需要在头部添加一些脚本,我有以下代码:addScript()上的Joomla系统插件无法正常工作

defined('_JEXEC') or die('Restricted access'); 

jimport('joomla.plugin.plugin'); 

class PluginSystemMyPlugin extends JPlugin { 
    function PluginSystemMyPlugin(&$subject, $config){ 
     parent::__construct($subject, $config); 
     $this->_plugin = JPluginHelper::getPlugin('system','myplugin'); 
     $this->_params = new JParameter($this->_plugin->params); 
     $this->_mainframe= &JFactory::getApplication(); 
     if($this->_mainframe->isAdmin())return; 
    } 
    function onAfterInitialise(){ 
     if($this->_mainframe->isAdmin())return; 
     $loadjquery = $this->params->get('loadjquery'); 
     $document =& JFactory::getDocument(); 
     if($loadjquery=='yes'){ 
      JHTML::_(' behavior.mootools'); 
      $document->addScript("http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"); 
     } 
     $document->addScriptDeclaration(' 
      jQuery.noConflict();'); 
    } 
} 

我也试过addScriptDeclaration(),addStyleSheet(),addStyleSheetDeclaration(),没有任何工作。我的Joomla版本是1.5.23。 我试过其他插件与onAfterInitialise()相同的声明,他们的工作,为什么不是我的?

+1

你怎么知道它不工作。是否有错误,或者没有出现。如果他们没有出现,你的模板中是否有?你的插件是否有数据库条目并发布? – jdog

回答

1

我发现了错误:

class PluginSystemMyPlugin extends JPlugin { 
    function PluginSystemMyPlugin(&$subject, $config){ 

必须是:

class plgSystemMyPlugin extends JPlugin { 
    function plgSystemMyPlugin(&$subject, $config){