业务经理

微信扫描以上二维码

028-61286886

技术咨询

内容页链接也实现了标题转拼音,怎么写伪静态规则

迅睿框架 更新 2019-05-13 00:24:34 lolian2

目的实现自定义内容页url

image.png

image.png

函数代码写好,如下:

image.png

前台url解析出来,内容页链接也实现了标题转拼音

image.png


最后问题来了,伪静态规则不知道怎么写。求助大神~

image.png

方案

  • 平平 #1 · 2019-05-12 19:39:54
    你这个函数需要优化,title已经存在于data,为什么还要查询一次,多此一举了
  • lolian2 #2 · 2019-05-12 19:46:12
    平平是的我也注意到了~ 多查一次数据库,这个不影响。问题是伪静态规则不知道该怎么写?
  • 易学习 #3 · 2019-05-12 20:28:48

    image.png
    这个伪静态没办法直接查询,因为wang.....kan这几个字符并没储存到数据库,就没办法直接查询了,只能这样办,把数据库记录全部查询出来,再循环遍历,然后一个个的对比title的配音字符,比较消耗资源,数据一旦多了,访问相当缓慢我建议的方案是 专门建一个自定义字段来储存wang...kan这几个字符,然后再一次性查询这几个字符的记录
  • lolian2 #4 · 2019-05-12 20:37:58
    易学习如果是新建一个字段来做url伪静态,类似{dirname}这样的、 个人觉得官方出这个自定义函数方法就有点多余了~感觉要用到Routes.php,目前关于自定义函数url这一块文档资料少。感谢回复~
  • 易学习 #5 · 2019-05-12 20:51:28
    我知道怎么做了,你用了自定义函数,这就好办了,改进一下自定义函数就行,解析规则也需要改一下配置,不难
  • lolian2 #6 · 2019-05-12 21:13:51
    易学习分享下
  • 黄老邪 #7 · 2019-05-12 21:19:19
    满意答案
    1、这里需要改进
    image.png
    在return之前 加一句 \Phpcmf\Service::L("L")->set_file("xs_news_".$pinyin, $data['id'], "xs_news");2、这个是对的,可以这样写
    image.png
    3、打开news模块文件dayrui/App/News/Controllers/Show.php
    <?php namespace Phpcmf\Controllers;
    
    /**
     * 二次开发时可以修改本文件,不影响升级覆盖
     */
    
    class Show extends \Phpcmf\Home\Module
    {
    
        public function index() {
            $this->_module_init();
            $id = \Phpcmf\Service::L('Input')->get('id');
            if ($cid = \Phpcmf\Service::L("L")->get_file("xs_news_".$id , "xs_news")) {
                $id = $cid;
            }
            $this->_Show(
                (int)$id,
                [
                    'field' => dr_safe_replace(\Phpcmf\Service::L('Input')->get('field')),
                    'value' => dr_safe_replace(\Phpcmf\Service::L('Input')->get('value')),
                ],
                max(1, (int)\Phpcmf\Service::L('Input')->get('page'))
            );
        }
    
        public function time() {
            $this->_module_init();
            $this->_MyShow(
                'time',
                (int)\Phpcmf\Service::L('Input')->get('id'),
                max(1, (int)\Phpcmf\Service::L('Input')->get('page'))
            );
        }
    
        public function recycle() {
            $this->_module_init();
            $this->_MyShow(
                'recycle',
                (int)\Phpcmf\Service::L('Input')->get('id'),
                max(1, (int)\Phpcmf\Service::L('Input')->get('page'))
            );
        }
    
        public function draft() {
            $this->_module_init();
            $this->_MyShow(
                'draft',
                (int)\Phpcmf\Service::L('Input')->get('id'),
                max(1, (int)\Phpcmf\Service::L('Input')->get('page'))
            );
        }
    
        public function verify() {
            $this->_module_init();
            $this->_MyShow(
                'verify',
                (int)\Phpcmf\Service::L('Input')->get('id'),
                max(1, (int)\Phpcmf\Service::L('Input')->get('page'))
            );
        }
    
    }
  • 黄老邪 #8 · 2019-05-12 21:21:00
    笔误 \Phpcmf\Service::L("L")改成 \Phpcmf\Service::L("cache")
  • 易学习 #9 · 2019-05-12 22:10:27
    楼上可以,和我的思路差不多
  • lolian2 #10 · 2019-05-12 22:54:05
    黄老邪自定义函数
    image.png
    News控制器Show.php文件
    image.png
    伪静态规则

    image.png
    调试再三还是
    image.png
  • lolian2 #11 · 2019-05-12 23:42:00
    问题还是在伪静态这里
    image.png
    一个是id一个是拼音 不相等了所以url没用上这一条规则,传不了参数值~
  • lolian2 #12 · 2019-05-13 00:23:33
    修改这个文件/dayrui/Core/Controllers/Show.php 问题解决~
  • lolian2 #13 · 2019-05-13 00:24:34
    @黄老邪:利用缓存的思路很不错~

迅睿系统漏洞

AI文章生成器
AI文章生成器(2026-10-29)
任务插图设置数量
Bing站长数据
Bing站长数据(2026-10-29)
根据BING接口调整菜单 各个页面数据支持点击查看详情
泛解析站群系统
泛解析站群系统(2026-10-29)
AI队列增加清空按钮 表单提示语收敛 目录模式不接管主域名模板
全站模块搜索
全站模块搜索(2026-10-28)
实现全模块一次性搜索内容,一键搜索全站内容精准搜索全部模块:
域名授权系统
域名授权系统(2026-10-28)
后台增加前台访问地址链接
GeoSeo收录宝
GeoSeo收录宝(2026-10-28)
1 优化 BreadcrumbList 前端输出item细节 ...
自定义单页
自定义单页(2026-10-28)
增加批量设置url地址 URL规则和分页规则改为页面编辑界面 低...
邀请注册返现
邀请注册返现(2026-10-28)
本插件仅限于邀请注册会员充值时返现给邀请者,可查看邀请的关系列表如果...
友情链接
友情链接(2026-10-28)
用于网站友情链接的后台录入,前台提供调用代码,有网站标题、网站log...
关键词TAG
关键词TAG(2026-10-28)
[高级版]增加补录索引生成按钮 [高级版]针对建站系统高级版进行查询...