比如我有個外掛程式,叫做
Test
class Test_Plugin implements Typecho_Plugin_Interface { public static function activate() { Helper::addAction('Test', 'Test_Action'); //Action.php Helper::addAction('Custom', 'Custom_Action'); //Custom.php } ... .. .}
我想添加兩個Action,分別是Test和Custom。。
這樣寫,訪問action/Test是正常的,但是訪問action/Custom卻報錯,說找不到。
請問能不能在一個外掛程式中添加兩個Action?如果可以,要怎麼寫代碼?
回複內容:
比如我有個外掛程式,叫做Test
class Test_Plugin implements Typecho_Plugin_Interface { public static function activate() { Helper::addAction('Test', 'Test_Action'); //Action.php Helper::addAction('Custom', 'Custom_Action'); //Custom.php } ... .. .}
我想添加兩個Action,分別是Test和Custom。。
這樣寫,訪問action/Test是正常的,但是訪問action/Custom卻報錯,說找不到。
請問能不能在一個外掛程式中添加兩個Action?如果可以,要怎麼寫代碼?
widget/do.php代碼
if (isset($widgetName) && class_exists($widgetName)) { $reflectionWidget = new ReflectionClass($widgetName); if ($reflectionWidget->implementsInterface('Widget_Interface_Do')) { $this->widget($widgetName)->action(); return; }}
確實不可以,Custom_Action的檔案include路徑是Custom/Action.php,並且類名為Custom_Action
一個action就能夠處理所有事情吧,如果需要增加action的話根據action的訪問原理,你只能新增加一個plugins來定義它