这是我的插件:
// no direct access
defined( '_JEXEC' ) or die( 'Restricted access' );
// Import library dependencies
jimport('joomla.plugin.plugin');
class plgContentEya extends JPlugin
{
function plgContentEya( &$subject, $config )
{
parent::__construct( $subject, $config );
}
/**
* Plugin method with the same name as the event will be called automatically.
*/
function onAfterDisplayContent( &$article, &$params, $limitstart)
{//Echo script there
echo "script works";
// Plugin code goes here.
// You can access parameters via $this->params.
return "<script src='http://widget.eya.com/sprk.1.0.2.js' type='text/javascript'></script>";
}
}
http://docs.joomla.org/Plugin/Events/Content
根据他们的文件
Return Value
String. Returned value from this event will be displayed in a placeholder. Most templates display this placeholder after the article separator.
插件显示并且在我安装时不会抛出错误..但事件永远不会被触发。我没有在文件中看到它
<install version="2.5" type="plugin" group="content">
<name>plg_content_eya</name>
<author>eya</author>
<creationDate>February 2013</creationDate>
<copyright>(C) 2013 Open Source Matters. All rights reserved.</copyright>
<license>GNU General Public License version 2 or later; see LICENSE.txt</license>
<authorEmail>anattaligg@graeit.com</authorEmail>
<authorUrl>www.eya.com</authorUrl>
<version>2.5.0</version>
<description>Adds eya plugin ot your site</description>
<files>
<filename plugin="eya">eya.php</filename>
</files>
</install>
答案 0 :(得分:2)
根据XML中的version="2.5"
,您的插件未被调用,因为您的事件名称错误。
自写入Plugin/Events/Content for Joomla! 1.5文档以来,事件名称已更改。我已将其标记为1.5文档,以便明确说明。
事件被重命名为更一致(域/期间/事件,例如内容/后/显示),因此,您想要的事件现在称为onContentAfterSave
,您可以找到更多有关重命名事件的信息,请参阅文章“Adapting a Joomla 1.5 extension to Joomla 1.6”
如果你想支持Joomla! 1.5你的插件也必须添加一个兼容层来捕获2.5调用并将其重定向到你的方法。 e.g。
// Catch 2.5
public function onContentAfterDisplay($article, $params, $limitstart)
{
$result = $this->onAfterDisplayContent($article, $params, $limitstart);
return $result;
}
N.B。未经测试的代码只需键入...