业务经理

微信扫描以上二维码

028-61286886

技术咨询

伪静态url的栏目列表页,在插件里怎么拿到栏目id

迅睿框架 更新 2023-06-07 20:57:13 迈克工作室

在动态url、伪静态、生成静态,这三种url模式下,怎么拿到栏目列表页的栏目id呢

动态url我知道通过

$c = \Phpcmf\Service::L('input')->get('c');

$id = \Phpcmf\Service::L('input')->get('id');

if ('category' == $c) {

    echo '栏目id:'.$id;

}

其他两个模式该怎么拿到呢

方案

  • 小波工作室 #1 · 2023-06-07 08:58:38
    $dir = \Phpcmf\Service::L('input')->get('dir');
  • 迈克工作室 #2 · 2023-06-07 09:15:51
    找到了,支持三种模式$id = \Phpcmf\Service::L('input')->get('id');$dir = dr_safe_replace(\Phpcmf\Service::L('input')->get('dir'));if ($dir) { $module = \Phpcmf\Service::L('cache')->get('module-'.SITE_ID.'-share'); $id = intval($module['category_dir'][$dir]); $cat = $module['category'][$id]; if (!$cat) { if (isset($module['category_dir'][$dir])) { $id = (int)$module['category_dir'][$dir]; } else { // 无法通过目录找到栏目时,尝试多及目录 foreach ($module['category'] as $t) { if ($t['setting']['urlrule']) { $rule = \Phpcmf\Service::L('cache')->get('urlrule', $t['setting']['urlrule']); $rule['value']['catjoin'] = '/'; if ($rule['value']['catjoin'] && strpos($dir, $rule['value']['catjoin'])) { $dir = trim(strchr($dir, $rule['value']['catjoin']), $rule['value']['catjoin']); if (isset($module['category_dir'][$dir])) { $id = (int)$module['category_dir'][$dir]; break; } } } } } }}
  • 迈克工作室 #3 · 2023-06-07 20:56:36
    满意答案
    $id = \Phpcmf\Service::L('input')->get('id');$dir = dr_safe_replace(\Phpcmf\Service::L('input')->get('dir'));if ($dir) { $module = \Phpcmf\Service::L('cache')->get('module-'.SITE_ID.'-share'); $id = intval($module['category_dir'][$dir]); $cat = $module['category'][$id]; if (!$cat) { if (isset($module['category_dir'][$dir])) { $id = (int)$module['category_dir'][$dir]; } else { // 无法通过目录找到栏目时,尝试多及目录 foreach ($module['category'] as $t) { if ($t['setting']['urlrule']) { $rule = \Phpcmf\Service::L('cache')->get('urlrule', $t['setting']['urlrule']); $rule['value']['catjoin'] = '/'; if ($rule['value']['catjoin'] && strpos($dir, $rule['value']['catjoin'])) { $dir = trim(strchr($dir, $rule['value']['catjoin']), $rule['value']['catjoin']); if (isset($module['category_dir'][$dir])) { $id = (int)$module['category_dir'][$dir]; break; } } } } } }}
  • 迈克工作室 #4 · 2023-06-07 20:57:13
    @迈克工作室:在后台发布编辑栏目控制器里找到

迅睿系统漏洞

GEO系统
GEO系统(2026-10-05)
增加排名管理,排名总览、明细、趋势 运营客户端升级方法:重新生成客户...
手机微信登录
手机微信登录(2026-10-02)
针对微信小程序官方审核要求,增加移动网站首页、隐私说明入口、服务支持...
图标库管理
图标库管理(2026-10-02)
移除后台管理和会员中心的冗余启用引用开关。 内置图标库增加增量更新...
GeoSeo收录宝
GeoSeo收录宝(2026-09-30)
1 强化 时间因子 2 强化 BreadcrumbList 3...
文件管理器
文件管理器(2026-09-30)
用浏览器就能完成文件的查看、在线编辑、目录管理、批量上传与素材预览,...
广告投放管理
广告投放管理(2026-09-30)
优化广告显示 更新调用代码为模板标签
模板界面管理
模板界面管理(2026-09-30)
增加模板标签代码生成功能
GeoSeo工具箱
GeoSeo工具箱(2026-09-29)
新增AI可见度检测 支持多品牌管理(品牌/别名/竞品,数据隔离,定...
自定义页面
自定义页面(2026-09-29)
自定义布局页面、创建企业宣传页面、创建活动页面等需求,自由添加显示控...
全库搜索
全库搜索(2026-09-28)
去除权限控制,模块搜索改为默认主副表关联搜索