2011-08-24 133 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){