Sistem sumber terbuka Wemall7.0, dikembangkan berdasarkan thinkphp5, mendukung komposer, mengoptimalkan inti, mengurangi ketergantungan, dan didasarkan pada ide arsitektur dan namespace baru.
Lingkungan pengoperasian ThinkPHP5 memerlukan PHP5.4 atau lebih tinggi.
Daftar fitur
Halaman beranda=》Halaman beranda sistem
Pengaturan=》Pengaturan situs, konfigurasi SMS, konfigurasi email
WeChat=》Konfigurasi WeChat, menu WeChat, balasan khusus, pesan templat, pengaturan layanan multi-pelanggan, printer WeChat
Isi=》Klasifikasi artikel, daftar artikel
Templat=》Pengaturan templat, templat email, templat SMS
Pengguna => Grup pengguna administrator, daftar administrator, daftar pengguna, daftar anggota
Plug-in => Manajemen plug-in, penyimpanan plug-in
Bantuan=》Gunakan bantuan
...
komposer membutuhkan qingyuexi/think-addons
'addons'=>[
// 可以定义多个钩子
'testhook'=>'putongdemodemo' // 键为钩子名称,用于在业务中自定义钩子处理,值为实现该钩子的插件,
// 多个插件可以用数组也可以用逗号分割
]
Atau buat addons.php
baru di direktori applicationextra dengan isi sebagai berikut:
<?php
return [
// 可以定义多个钩子
'testhook'=>'putongdemodemo' // 键为钩子名称,用于在业务中自定义钩子处理,值为实现该钩子的插件,
// 多个插件可以用数组也可以用逗号分割
]
Plug-in yang dibuat dapat digunakan dalam tampilan atau dalam bisnis PHP
Setelah instalasi selesai, ketika Anda mengakses sistem, direktori bernama addons
akan dibuat di direktori root proyek, dan plug-in yang diperlukan akan dibuat di direktori ini.
Tuliskan contohnya di bawah ini:
Buat direktori putong di direktori addons
Buat file kelas config.php di direktori putong. File konfigurasi plug-in dapat dihilangkan.
<?php
return [
'name' => 'putong',
'title' => 'putong',
'description' => 'putong类插件',
'status' => 1,
'author' => '清月曦'
];
Buat direktori demo di direktori putong di bawah direktori addons
Buat file kelas Demo.php di direktori pengujian. Catatan: Huruf pertama file kelas harus menggunakan huruf kapital
<?php
namespace addonsputongdemo; // 注意命名空间规范
use thinkAddons;
/**
* 插件测试
* @author byron sampson
*/
class Demo extends Addons // 需继承thinkaddonsAddons类
{
// 该插件的基础信息
public $info = [
'name' => 'test', // 插件标识
'title' => '插件测试', // 插件名称
'description' => 'thinkph5插件测试', // 插件简介
'status' => 0, // 状态
'author' => 'byron sampson',
'version' => '0.1'
];
/**
* 插件安装方法
* @return bool
*/
public function install()
{
return true;
}
/**
* 插件卸载方法
* @return bool
*/
public function uninstall()
{
return true;
}
/**
* 实现的testhook钩子方法
* @return mixed
*/
public function testhook($param)
{
// 调用钩子时候的参数信息
print_r($param);
// 当前插件的配置信息,配置信息存在当前目录的config.php文件中,见下方
print_r($this->getConfig());
// 可以返回模板,模板文件默认读取的为插件目录中的文件。模板名不能为空!
return $this->fetch('info');
}
}
Buat file kelas config.php di direktori pengujian. File konfigurasi plug-in dapat dihilangkan.
<?php
return [
'name' => 'demo',
'title' => 'demo',
'description' => 'demo插件',
'status' => 1,
'url' => true,
'author' => '清月曦',
'version' => '0.1'
];
Buat file template info.html di direktori demo, yang merupakan file template yang sesuai ketika hook menggunakan metode pengambilan.
<h1>hello tpl</h1>
如果插件中需要有链接或提交数据的业务,可以在插件中创建controller业务文件,
要访问插件中的controller时使用addon_url生成url链接。
如下:
<a href="{:addon_url('putong://demo/admin/index')}">link demo</a>
格式为:
demo为插件名,admin为controller中的类名,index为controller中的方法
Buat direktori pengontrol di direktori pengujian, dan buat file Action.php di direktori pengontrol. Penggunaan kelas pengontrol konsisten dengan pengontrol di tp5.
<?php
namespace addonsputongdemocontroller;
class Admin
{
public function index()
{
echo 'hello link';
}
}
Jika Anda perlu menggunakan templat tampilan, Anda perlu mewarisi file templat kelas
thinkaddonsController
. Lokasi file templat adalah tampilan di direktori plug-in modul.
<?php
namespace addonsputongdemocontroller;
use thinkaddonsController;
class Admin extends Controller
{
public function index()
{
return $this->fetch();
}
}
Setelah membuat plug-in, Anda dapat menggunakan hook di plug-in dalam bisnis normal. Saat menggunakan hook, parameter kedua dapat dihilangkan.
<div>{:hook('testhook', ['id'=>1])}</div>
Ini dapat digunakan di mana saja dalam proses normal thinkphp5.
hook('testhook', ['id'=>1])
tp5
- addons
-- putong
--- demo
---- controller
----- Admin.php
---- view
---- action
----- link.html
--- config.php
--- info.html
--- Demo.php
- application
- thinkphp
- extend
- vendor
- public
Versi open source wemall7 dirilis di bawah lisensi open source Apache2 dan tersedia untuk penggunaan gratis. Informasi hak cipta dari kode sumber pihak ketiga dan file biner yang disertakan dalam proyek ini ditandai secara terpisah. Hak Cipta Hak Cipta © 2016-2017 oleh wemallshop.com (http://www.wemallshop.com) Semua hak dilindungi undang-undang.