文章内容页的模块名称module_show_read_data变了吗

迅睿框架 更新 2021-12-26 23:13:53 大鲨鱼

\Phpcmf\Hooks::on('module_show_read_data', function($data) {

文章内容页的模块名称module_show_read_data变了吗?

我原来写的钩子不起作用了

麻烦告知一下新的名字

方案

  • 官方研发技术-朱老师 #1 · 2021-12-26 15:30:58
    // 挂钩点 内容读取之后
    \Phpcmf\Hooks::trigger('module_show_read_data', $data);
  • 大鲨鱼 #2 · 2021-12-26 19:05:49
    \Phpcmf\Hooks::on('module_show_read_data', function($data) {
    
        function is_crawler() {
            $userAgent = strtolower($_SERVER['HTTP_USER_AGENT']);
            $spiders = array(
                'Googlebot', // Google 爬虫
                'Baiduspider', // 百度爬虫
                'Yahoo! Slurp', // 雅虎爬虫
                'YodaoBot', // 有道爬虫
                'msnbot', // Bing爬虫
                'YisouSpider', // 神马爬虫
                'Sogou web spider', // 搜狗爬虫
                '360Spider', // 搜狗爬虫
                // 更多爬虫关键字
            );
            foreach ($spiders as $spider) {
                $spider = strtolower($spider);
                if (strpos($userAgent, $spider) !== false) {
                    return true;
                }
            }
            return false;
        }
        
        
    
        if(!is_crawler()){
    
            $ip = \Phpcmf\Service::L('input')->ip_address();
            $iparea = \Phpcmf\Service::L('ip')->address($ip);
            $useragent = \Phpcmf\Service::L('input')->get_user_agent();
            print $useragent;
            if($data['uid']!==0){
                if(strpos($iparea, '河南')!==false){
                    exit(\Phpcmf\Service::C()->goto_404_page(dr_lang('无法找到内容')));
                }
                elseif(strpos($iparea, '北京')!==false){
                    exit(\Phpcmf\Service::C()->goto_404_page(dr_lang('无法找到内容')));
                }
                
                elseif(strpos($iparea, '上海')!==false){
                    exit(\Phpcmf\Service::C()->goto_404_page(dr_lang('无法找到内容')));
                }
                
                elseif(strpos($iparea, '浙江')!==false){
                    exit(\Phpcmf\Service::C()->goto_404_page(dr_lang('无法找到内容')));
                }
            }
        }
    
      
    });
    官方研发技术-朱老师 这个是我原来的代码 在之前版本都正常运行的,升级后就不能用了。
    按照你回复的
    \Phpcmf\Hooks::trigger('module_show_read_data', $data);
    改写,改完直接报错
  • 大鲨鱼 #3 · 2021-12-26 21:35:13
    解决办法供大家参考由于新版本程序结构变化比较大,移动修改删除了很多东西。最终经对比4.5.0版本和4.5.3版本,进行修改后,才把问题解决4.5.0版本的有挂钩点,位置位于:\dayrui\Fcms\Control\Home\Module.php 第382-383行 4.5.2以后没有此文件
    image
    搜索查找上下文代码,找到/dayrui/Fcms/Extend/Home/Module.php 和上述文件类似,找到419行位置,比照之前老版本文件,后面加入代码如图所示。保存测试,顺利运行。
    image
    @官方研发技术-朱老师 @官方研发技术-张锋 请在下一个版本进行修复谢谢
  • 官方研发技术-朱老师 #4 · 2021-12-26 22:34:03
    满意答案
    module_show_data
  • 大鲨鱼 #5 · 2021-12-26 23:13:53
    @官方研发技术-朱老师:这个也对,不用改其他文件!

迅睿系统漏洞

站群分站系统
站群分站系统(2026-10-15)
子站域名新增llms.txt访问
GEO系统
GEO系统(2026-10-14)
修复下载zip空白地址问题 修复流量复刻和任务队列错误
GeoSeo收录宝
GeoSeo收录宝(2026-10-14)
新增 站长工具箱 前端首页自动调用meta 数据
滑块验证码 Gocaptcha
滑块验证码 Gocaptcha(2026-10-13)
基于开源项目 go-captcha 的行为验证码插件,滑动拼图、区域...
GeoSeo工具箱
GeoSeo工具箱(2026-10-13)
优化巡检任务
GeoSeo排名助手
GeoSeo排名助手(2026-10-11)
加入大模型自定义
SEO聚合关键字
SEO聚合关键字(2026-10-11)
优化关键字列表页最多支持1万篇文章,过多会导致服务器扛不住;
CMS内容同步复制
CMS内容同步复制(2026-10-10)
增加时间是否更新的开关