帝国CMS城市分站插件

getfuner 7142 0

帝国CMS城市分站插件-第1张图片-九零博客 - 一个分享技术、记录生活的个人技术博客帝国CMS城市分站插件.zip

插件介绍

帝国CMS城市分站插件,adcode版,支持某地址开启和关闭、支持区号或城市拼音(全拼/首字等)url地址显示。

本插件以极的小插件集成省市区高级筛选,并带有高亮,高亮项有id,短名,完整名提供SEO输出功能,可实现各种组合方案。


帝国CMS城市分站插件-第2张图片-九零博客 - 一个分享技术、记录生活的个人技术博客
插件截图


插件特色

1.使用自动加载功能,代码写的更少(支持php5.6版和php7.x版),可选包,使用composer使用第三方包;
2.详情页可生成纯静态页,列表页部分静态页+伪静页混合/全伪静带缓存功能;
3.采用一个字段(字段名:myarea 类型int 6位),就解决全国省市区数据所有存储过程,调用数据时不用组合(province/city/district 3个字段存储 、也不用like查询方式效率低下),执行效率更高(有预处理语句如调城市:myarea BETWEEN 330100 AND 330182),随时可以跟其它调用组合;
4.伪静url筛选地址无值时自动过虑($_GET参数为空),伪静规则仅写一条即通用可(新增),翻页功能的不影响;
5.不改动帝国核心,以改模板为主(引入自动加载功能);
6.高级版,可以组合结合项后台直接设置,前端页面能直接生成筛选列表,支持自定义伪静规则(结合项里值可以随意调换位置),特殊字段已经内置了(伪静功能也相应设置一下,不然面页打不开)
7.支持Allinfo插件所有功能
8.可控筛选城市级别,v1.0.4才支持
9.支持首页和列表(页面静态,这个不知道表达,帝国原来可以静态就现在保持的,新增链接就是伪静的,就是混用的)伪静给合,v1.0.4才支持

插件安装方法

*** 第一步,复制文件到指定位置 ***

将upload复制根目录,如果是新安装直接覆盖就行了。

*** 第二步,安装自动加载功能 ***

在class目录的 connect.php 文件中 加入代码

在10行左右(中间代码)

-----开始----------------
/**
* 2021.09.01 自动载功能php5.6版
* cighsen02 365182575
* update 2022.03.07
**/
define('EXTEND_DIR', dirname(__DIR__) . DIRECTORY_SEPARATOR . 'extend');
require_once EXTEND_DIR . DIRECTORY_SEPARATOR . 'autoload.php';
-------结束---------------


*** 第三步,列表信息添加 初始化 ***

大约在第9行,据数据库加载完后添加以上代码

------开始---------------------------------------
//开始 2021.10.28 cighsen02
$run = TwoirAllCity::webStart();
------结束----------------------------------------


大区在第40行,将 原代码: $classid=$_GET['classid'];改为以下代码

------开始---------------------------------------
$classid= isset($_GET['classid']) && $_GET['classid'] ? $_GET['classid'] : $run->getClassid();
------结束----------------------------------------


大约在265行,结合项中

elseif(empty($emod_r[$mid]['setandf'])) 下代码修改如下:

原始代码

--------------------------------------------
$listandf.=$doandor.$andr[$i]."='".$andval."'";
-----------------------------------


改后代码

------开始---------------------------------------
if($andr[$i] === 'myarea'){
extract($run->getCurrent(3));
if ($run->getAdcode() > 100000 && (isset($district['sql']) || isset($city['sql']) || isset($province['sql']))) {
$listandf .= $doandor . ($district['sql'] ? $district['sql'] : ($city['sql'] ? $city['sql'] : $province['sql']));
}
}else{
$listandf.=$doandor.$andr[$i]."='".$andval."'";
}
------结束------------------------------------------


*** 第四步,详情页添加 初始化 ***

在 if($r['isurl']) 大括号之前

大约在第34行,据数据库加载完后 + 不是外部链接添加以上代码

---------开始--------------------------------------------------
/**
* 有地址项加载插件
* 2021.11.04 cighsen02 365182575
*/
if (isset($r['myarea']) && $r['myarea'] > 0) {
$_GET['myarea'] = (int)$r['myarea'];
$run = TwoirAllCity::webStart();
}
---------结束----------------------------------------------------


*** 第五步,后台新增管理菜单 ***

后台系统->扩展菜单->管理菜单

增加

分类名称:AllCity城市筛选 类型插件菜单  点击增加

进入管理菜单

增加菜单

菜单名称:基础设置 显示顺序:0  链接地址:extend/twoir/allcityset.php 模式:选择 金刚模板链接

其它说明: listinfo.php设置参数文件设置,(文件位置:e/data/html/list/下)

体验一下,已经全部完毕了。

/***

* 本次列更新 自动加载优化。

* php版本降至php5.6

*  城市分类功能优化,筛选后台设置前条会正常调用(多个筛选(除地址adcode和classid以外定义 多个筛选)需要联系本人)

***/

模板里加入变量

-----------------------------------------
<?php
extract($GLOBALS['run']->getCurrent());
?>
-----------------------------------------


发布评论 0条评论)

  • Refresh code

还木有评论哦,快来抢沙发吧~