简单插件制作流程---友情链接解说版

2020-03-20 181 次

这里以友情链接为例简单的说下 以下几乎全是代码 你需要有一定的PHP基础  只负责贴代码不负责教学 只可意会不可言传

config.php 直接复制过去就可以不需要改

admin_menu.php 后台菜单 会员中心也有的话可以模块一样 需要 member_menu.php 没有就删除 

<?php
return [
	'links'=>[ //插件的目录名 小写
		'title'=>'links','sons'=>[ //插件的目录名 小写
			[
				'title'=>'功能设置','sons'=>[ //父级菜单名称
				[
					'title'=>'添加友情链接','link'=>'links/add', //子级菜单名称
				],[
					'title'=>'友情链接管理','link'=>'links/index', //连接
				],
			],
			],
		],
	],
];

admin/Links.php 这个是你菜单中设置的控制器名称

<?php
namespace plugins\links\admin;
use app\common\controller\AdminBase; 
use plugins\links\model\Links AS Model;
use app\common\traits\AddEditList;
class Links extends AdminBase{
	use AddEditList;
	protected $model;
	protected $form_items=[];
	protected $list_items;
	protected $tab_ext;
	protected function _initialize(){
		parent::_initialize();
		$this->model=new Model();
		/*
		表单填写的项目 也可以放到 add edit中 放到这里好处是 添加和修改一次完成
		['表单类型','字段名英文','字段标题','提示语','默认值'] 大致都差不多 类型不一样略有区别
		*/
		$this->form_items=[
			['text','name','名称'],
			['text','link','链接'],
			['image','image','LOGO'],
			['radio','status','状态','',['隐藏','显示'],1],
			['text','sort','排序值'],
		];
	}

	/**
	 * 友情链接首页
	 * @return mixed|string
	 */
	public function index(){
		$this->tab_ext=[
			'page_title'=>'友情链接管理', //左上角的文字
		];
		// 列表表格显示的名称 
		// ['字段名','名称','是不是快速修改']  ['字段名','名称'] 是不能快速修改
		$this->list_items=[
			['name','名称','text.edit'],
			['link','链接','text.edit'],
			['sort','排序值','text.edit'],
		];
		$data=$this->model->order('sort','desc')->select();
		return $this->getAdminTable($data);
	}

	/**
	 * 添加友情链接
	 * @return mixed|string
	 */
	public function add(){
		$this->tab_ext=[
			'page_title'=>'添加友情链接',
		];
		return $this->addContent();
	}

	/**
	 * 修改友情链接
	 * @param null $id
	 * @return mixed|string
	 */
	public function edit($id=null){
		$this->tab_ext=[
			'page_title'=>'修改友情链接',
		];
		if(empty($id))
			$this->error('缺少参数');
		$info=$this->getInfoData($id);
		return $this->editContent($info,auto_url('index'));
	}

	/**
	 * 删除友情链接
	 * @param $ids
	 */
	public function delete($ids){
		if(empty($ids)){
			$this->error('ID有误');
		}
		$ids=is_array($ids)?$ids:[$ids];
		if($this->model->destroy($ids)){
			$this->success('删除成功','index');
		}
		else{
			$this->error('删除失败');
		}
	}
}

未完待续 有时间继续更新 或者自己看源码吧 都很简单 


标签
声明:
1.本站的资源收集于互联网,仅供大家学习交流,请勿用于非法用途,否则后果自负!
2.如转载本站的原创文章,请勿必注明文章来源,对于不尊重原创的行为我们将追究责任