Joomla:onContentAfterSave没有触发

时间:2012-04-19 17:44:26

标签: php joomla

我正在开发一个Joomla插件。不幸的是,没有解雇必要的事件。这意味着永远不会执行以下代码:

public function onContentAfterSave($context, &$article, $isNew)
{
 ....
}

我像往常一样开发了这个插件。所有其他使用的事件都可以。 这可能是一个内部的Joomla \ PHP错误,还是我错过了什么?

Apache / 2.2.4(Win32)mod_ssl / 2.2.4 OpenSSL / 0.9.8k PHP / 5.3.3

的Joomla! 2.5.4稳定[Ember] 2012年4月2日14:00 GMT

2 个答案:

答案 0 :(得分:4)

.xml文件中的插件名称与.php文件中的插件名称之间可能存在不匹配的内容。

[PluginName] .PHP

<?php

defined('_JEXEC') or die;

jimport('joomla.event.plugin');  // I've also seen joomla.plugin.plugin.
                                 // Perhaps and older version
class plg[PluginGroup][PluginName]
{
    public function onContentAfterSave( $context, &$article, $isNew  )
    {
      // $db = JFactory::GetDBO();
      // etc...
    }
}
?>

[PluginName]的.xml

<?xml version="1.0" encoding="UTF-8"?>
<extension type="plugin" version="2.5.0" group="[PluginGroup]">
<name>[PluginName]</name>
<version>0.0.1</version>
<author></author>
<creationDate></creationDate>
<copyright></copyright>
<license></license>
<authorEmail></authorEmail>
<authorUrl></authorUrl>
<description></description>
<files>
  <filename plugin="[PluginName]">[PluginName].php</filename>
  <filename>[PluginName].xml</filename>
  <filename>index.html</filename>       
</files>
</extension>

否则,请发布更多信息:

  1. 你的[pluginname] .php和[pluginname] .xml文件还有什么。
  2. 您是否正确安装了插件?
  3. 您是否在安装后发布了该插件?

答案 1 :(得分:0)

肯定是安装并启用了该插件吗?特别是很容易忘记后者。