找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 2204|回复: 0
打印 上一主题 下一主题

dedecms教程之单表模型动态浏览设置方法分享

[复制链接]

2617

主题

2617

帖子

7789

积分

论坛元老

Rank: 8Rank: 8

积分
7789
跳转到指定楼层
楼主
发表于 2018-2-13 20:39:10 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

arclistsg 标签,单表独立模型的文档列表调用标记
方法一:
在arclist标签使用中,其对应主表dede_archives中有一个字段ismake字段,其作用大家应该知道,值为-1时动态,我们的方法就是模仿这个。
单表模型的创建,默认是不没有ismake字段,因为我们手工创建一个ismake字段,设其传值为-1。
注:创建模型时,可以添加一个ismake字段。如果没有,则可以在对应表中直接添加,并在dede_channeltype表中的listfields中加上ismake字段,此举为添加查询字段。如果最后一步都完了,发现不起作用,可以查询listfields是否有ismake
修改源码:
第一,arclistsg 源码中,大约在264行,找到$row['arcurl']这个,GetFileUrl()【这个函数在helpers/channelunit.helper.php中】,就是获取url地址用的,其中有一个ismake参数,有兴趣可以看看这个函数。
我们的目的就是将GetFileUrl()参数中的 1[$row['title']后面的1] 改为$row['ismake']
注:如果只需要arclistsg标签显示动态,则到此步就可以了
第二,修改arc.sglistview.class.php,大约760行,将$row['ismake'] = 1;注释掉,下其下面的几行,有$row['arcurl'] = GetFileUrl()有与第一步中的代码,改成第一步中一样的即可
到此,基本上可以实现动态浏览,不过在新增或修改时还是会生成html文件,将对应发布程序或修改程序将生成html的代码注释就可以了。
方法二:
其实和方法一是一个道理,如果不想建立ismake字段,将对应的地方法修改为-1就可以了,不过这样做兼容性不怎么好,建议方法一
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

用户反馈
客户端