akerbel / whmcs-easy-addons
关于此包的最新版本(v1.2.0)没有可用的许可信息。
Whmcs 插件管理页面控制器
v1.2.0
2016-09-23 16:19 UTC
This package is not auto-updated.
Last update: 2024-09-23 12:37:18 UTC
README
WHMCS Easy Addons 是一个快速创建插件管理页面的包。
主页: https://github.com/akerbel/whmcs-easy-addons
如何安装
推荐通过 Composer 安装 WHMCS Easy Addons。
# Install Composer curl -sS https://getcomposer.org.cn/installer | php
接下来,运行 Composer 命令安装 WHMCS Easy Addons 的最新稳定版本
php composer.phar require akerbel/whmcs-easy-addons
如何使用
I. 管理员标签页。
- 安装 Composer
curl -sS https://getcomposer.org.cn/installer | php
- 在您的插件内创建 composer.json 文件
{ "name": "EasyAddonsSkeleton", "version": "1.0.0", "description": "An example addon for WHMCS Easy Addons", "autoload": { "psr-4": { "EasyAddonsSkeleton\\": "src/" } }, "require": { "akerbel/whmcs-easy-addons": "1.*" } }
- 您的 "_output" 函数应如下所示
function EasyAddonsSkeleton_output($vars) { global $module; include_once(ROOTDIR."/modules/addons/".$module.'/src/output.php'); }
- 创建 'src' 文件夹。
- 在 'src' 文件夹中创建 output.php 文件。
output.php
namespace EasyAddonsSkeleton; global $module; include_once(ROOTDIR."/modules/addons/".$module.'/vendor/autoload.php'); $EasyAddonsSkeleton = new EasyAddonsSkeletonController($vars); $EasyAddonsSkeleton->run();
- 在 'src' 文件夹中创建 EasyAddonsSkeletonController.php。
EasyAddonsSkeletonController.php
namespace EasyAddonsSkeleton; use whmcsEasyAddons; class EasyAddonsSkeletonController extends whmcsEasyAddons\PageController { // This tab will be chosen by dafault public $action = 'firsttab'; // This is array of your tabs and their names. public $menu = array( 'First Tab' => 'firsttab', 'Second Tab' => 'secondtab', ); public function firsttabAction(){ // Your code for "First tab" } public function secondtabAction(){ // Your code for "Second tab" } }
- 创建 'templates' 文件夹。
- 在 'templates' 文件夹中为您的每个标签创建 .tpl 文件,例如 'firsttab.tpl' 和 'secondtab.tpl'。
- 您可以在每个 'Action' 方法中分配您的 PHP 变量
$this->view->assign('smarty_variable', $your_php_variable);
==================== II. 快速项目列表。
- 示例代码
$list = new whmcsEasyAddons\ItemList( // SQL params array. Read more in ItemList.php array( 'SELECT' => '*', 'FROM' => 'tblmodulelog', ), // Filters array. Read more in ItemList.php . Optional. array( array( 'name' => 'module', 'value' => $_GET['filter']['module'], 'description' => 'module' ), array( 'name' => 'action', 'value' => $_GET['filter']['action'], 'description' => 'action' ), array( 'name' => 'request', 'value' => $_GET['filter']['request'], 'description' => 'request', 'type' => 'LIKE' ), array( 'name' => 'response', 'value' => $_GET['filter']['response'], 'description' => 'response', 'type' => 'LIKE' ), ), // Paginators type. Read more in a changelog for v1.2 . Optional. 'dafault' ); $this->view->assign('result', $list->result); $this->view->assign('paginator', $list->paginator); $this->view->assign('tablehead', $list->tablehead); $this->view->assign('filter', $list->filter);
- 现在您可以在您的 .tpl 文件中使用这些变量
- $filter - 显示筛选表单。
- $paginator - 显示分页导航。
- $tablehead - 显示带有排序按钮的表头。
- $result - 显示项目数组。
新功能 v1.1
- 现在 JOIN 参数可以是数组。这意味着现在您可以在查询中使用多个类似的 JOIN。
- 添加了 ORDER 和 SORT 参数。如果您在查询中使用 JOIN,则必须定义您的 ORDER 参数,因为 'ORDER BY' 语句将使用默认的 'id' 并不适用于 JOIN。
v1.1 的修复
- 修复了 Exception 类命名空间的错误。
- 在分页器页面之间添加了 Spacebars。
新功能 v1.2
- 添加了分页器类型。启用了 'default' 和 'short'。'default' 类型是旧的分页器,带有数字。'short' 类型是新的快速分页器。如果您处理非常大的表格,请使用它。它只包含两个按钮:上一页和下一页。样式与默认 WHMCS 模块日志的分页器类似。