78模板网分享关于zblog调用discuz论坛数据的方法有很多种,一般说来都是js方式用的最多,在discuz的后台可以直接生成调用代码,然后在需要调用的页面相关位置放上调用代码就可以了,这种方法没有局限性,可以在任何位置进行调用,是最方便的一种方法!
但是有人问有没有不用js的方式调用的方法,为了页面的SEO,当然直接调用内容是最好的方法,这种方法是有的,阿诺就是用的这种调用方式,但是这种方法只局限于二级目录的情况,不能跨站调用,以心诺设计风尚为例,本站结构大家一目了然,主站程序是zblog程序,discuz论坛是在本站二级目录bbs下,实现原理即是通过discuz论坛的计划任务,定时生成更新文件,而根据zblog的程序特点,zblog的调用数据都存放在网站的INCLUDE下面,在zblog模版中可以以文件名作为调用标签,直接读取文件内容!所以,我们可以得出这样一个结论,利用discuz计划任务,在主站的include文件夹里面生成discuz论坛最新帖子的文件,然后通过zblog调用文件就可以了!下面看看这个直观的架构图1所示:
<?php if(!defined('IN_DISCUZ')) { exit('Access Denied'); } $query = DB::query("SELECT tid,subject,lastpost FROM ".DB::table('forum_thread')." order by tid desc limit 0,14"); while ($value = DB::fetch($query)) { $txtstr.= "<li><a href='/bbs/thread-".$value['tid']."-1-1.html' title='".$value['subject']."' target='_blank'>".$value['subject']."</a></li>n"; } file_put_contents('../include/sean_bbs_new.txt', $txtstr); ?>
将文件上传到论坛目录中的source/include/cron/ 中,然后在discuz论坛后台的工具->计划任务中新增一项“论坛最新贴调用”,然后设置它的执行周期,在运行脚本那填写文件名sean_cron_daily.php就可以了,保存后回到计划任务,点击执行,大功告成!
这里是根据本站的情况介绍的,根据大家站点目录的情况可对源文件进行稍微的调整即可!
本文链接:http://78moban.cn/post/3645.html
版权声明:站内所有文章皆来自网络转载,只供模板演示使用,并无任何其它意义!