我想编写只显示“PAGE MOVED”文本而非页面的插件。
我创建了一个文件夹myPlugin
。
在内部,我放了myPlugin.xml
:
<?xml version="1.0" encoding="utf-8"?>
<extension version="2.5" type="plugin" group="system">
<name>myPlugin</name>
<creationDate>Creation date</creationDate>
<author>Your name</author>
<authorEmail>Your e-mail address</authorEmail>
<authorUrl>Your website</authorUrl>
<copyright>Copyright information</copyright>
<license>All rights reserved.</license>
<version>Version of the plugin</version>
<description>Description of the plugin</description>
<files>
<filename plugin="myPlugin">myPlugin.php</filename>
</files>
</extension>
myPlugin.php
:
<?php
defined('_JEXEC') or die('Restricted access');
class myPlugin extends JPlugin{
public function __construct(& $subject, $config){
parent::__construct($subject, $config);
$this->loadLanguage();
}
public function onAfterRoute() {
die("PAGE MOVED"); //no effect
}
public function onAfterRender() {
die("PAGE MOVED"); //no effect
}
public function onBeforeRender(){
die("PAGE MOVED"); //no effect
}
};
我从中做了myPlugin.zip
。
我通过Joomla Extension Mannager(成功)安装它,而不是启用它(成功)。
但是当我去任何一个页面时,我发现myPluing
没有效果。
我还需要做些什么才能看到效果?
我已停用缓存。
答案 0 :(得分:1)
该类未正确命名。要让Joomla调用插件类的方法,它必须遵循标准命名约定。根据您的xml文件,您已经创建了一个系统插件,因此该类的名称应如下所示:
class plgSystemMyPlugin extends JPlugin{
那应该让它起作用(即经常死)!