迅睿CMS框架是一款PHP8高性能·简单易用的CMS开源开发框架,基于MIT开源许可协议发布,免费且不限制商业使用,是免费开源的产品,以万端互联为设计理念,支持的微信公众号、小程序、APP客户端、移动端网站、PC网站等多终端式管理系统。
PHP程序里面
开发应用插件前端调用问题求大神给个思路
因为一些特殊原因,要开发一个产品展示功能,产品分类必须指定的表名称:cptree,产品表:product
所以只能放弃内容模块,,创建空白应用。
先创建好了表与字段,利用开发者工具,创建数据控制器,已经实现了后台的数据添加修改以及显示。
但现在前端无从下手了
1、前端需要产品分类列表页list.html显示
2、产品搜索功能,以及字段筛选功能。
2、产品详情show.html显示,表字段调用。
大神们给点思路或给个示例
1 创建空白控制器,根据分类id传入进去,再模板使用table标签查询这个分类的数据
2 需要搜索字段的话,建议参考hy插件的search用法,他是基于内容搜索做的搜索member表,异曲同工,有参考意义
3 也是1一样,创建空白控制器,传入内容id进去,然后可以在控制器里面做查询,也可以在模板里面使用table标签做插查询,前者更加规范一些
<?php namespace Phpcmf\Controllers; /* /dayrui/App/插件目录/Controllers/home.php */ class Home extends \Phpcmf\Common { public function index() { // 默认 /index.php?s=插件目录&c=home&m=index \Phpcmf\Service::V()->set_dir(dirname(__FILE__).'/../Views/'); \Phpcmf\Service::V()->display('home.html'); } public function list() { // 列表页面 /index.php?s=插件目录&c=home&m=list // 产品分类 $data = \Phpcmf\Service::M()->db->query("select * from cptree"); $typelist = []; if ($data){ $rows = $data->getResultArray(); if($rows){ foreach ($rows as $t) { $typelist[] = [ 'id' => $t['id'], 'name' => $t['name'], ]; } } } \Phpcmf\Service::V()->set_dir(dirname(__FILE__).'/../Views/');// 模版目录为当前目录Views下 \Phpcmf\Service::V()->display('list.html'); } public function show() { // 内容页面 /index.php?s=插件目录&c=home&m=show&id=xx $id = \Phpcmf\Service::L('Input')->get('id'); $row = \Phpcmf\Service::M()->table('product')->where('id', $id)->getRow(); \Phpcmf\Service::V()->assign([ 'title' => $row['title'], 'content' => htmlspecialchars_decode($row['content']), ]); \Phpcmf\Service::V()->set_dir(dirname(__FILE__).'/../Views/'); \Phpcmf\Service::V()->display('show.html'); } } //list.html {loop $typelist $i $c} {$c.id} {$c.name} {/loop} //show.html <h1>{$title}</h1> <div>{$content}</div>
public function list() { // 列表页面 /index.php?s=插件目录&c=home&m=list // 产品分类 $data = \Phpcmf\Service::M()->db->query("select * from cptree"); $typelist = []; if ($data){ $rows = $data->getResultArray(); if($rows){ foreach ($rows as $t) { $typelist[] = [ 'id' => $t['id'], 'name' => $t['name'], ]; } } } \Phpcmf\Service::V()->assign([ 'typelist' => $typelist, ]); \Phpcmf\Service::V()->set_dir(dirname(__FILE__).'/../Views/');// 模版目录为当前目录Views下 \Phpcmf\Service::V()->display('list.html'); }
\Phpcmf\Service::V()->set_dir(dirname(__FILE__).'/../Views/');
1 创建空白控制器,根据分类id传入进去,再模板使用table标签查询这个分类的数据
2 需要搜索字段的话,建议参考hy插件的search用法,他是基于内容搜索做的搜索member表,异曲同工,有参考意义
3 也是1一样,创建空白控制器,传入内容id进去,然后可以在控制器里面做查询,也可以在模板里面使用table标签做插查询,前者更加规范一些