调用指定多个分类文章及后台控制id和数量的方法
对于SQL命令不是很熟悉,想用EMLOG做一个文章类表调用,需要用到SQL命令代码,调用指定多个分类EMLOG文章列表,研究了好些时间没整明白,求人也不是个事,只好自己继续边看教程边测试,功夫不负有心人,最终给我整明白了,用这个SQL命令可以正确调用指定多个分类的EMLOG文章列表,分享给有需要的站长们,把以下代码复制到模板的脚本文件中,设置好需要调用的分类ID号,在前台模板里写入调用代码就可以实现你想要的效果了。
在模板文件module.php中加入如下代码
<?php //调用指定多个分类文章,1,2,3,4代表分类id function sort_logs($log_num) { $db = MySql::getInstance(); $sql = "SELECT gid,title,date,content,views FROM ".DB_PREFIX."blog WHERE type='blog' and hide='n' and sortid IN (1,2,3,4) ORDER BY `date` DESC LIMIT 0,$log_num"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><a href="<?php echo Url::log($row['gid']);?>"><?php echo $row['title'];?></a></li> <?php } ?> <?php } ?>
说明:IN后面括号中的就是要调用的分类ID号,请自行更改你需要调用的分类ID号,中间用英文状态下的逗号隔开,前台模板调用在需要输出地方放入代码<?php sort_logs(10);?>其中10为显示条数
以上方法每次都需要手动修改模板文件中的分类id和数量,下面跟大家说说后台控制id和数量的方法(ps:必须安装 模板设置 插件,否则无法使用以下方法)
1、在模板文件module.php中加入如下代码
<?php //调用指定多个分类文章 function sort_logs($log_num) {require('sheli.php'); $db = MySql::getInstance(); $sql = "SELECT gid,title,date,content,views FROM ".DB_PREFIX."blog WHERE type='blog' and hide='n' and sortid IN ($sortlog_id) ORDER BY `date` DESC LIMIT 0,$log_num"; $list = $db->query($sql); while($row = $db->fetch_array($list)){ ?> <li><a href="<?php echo Url::log($row['gid']); ?>"><?php echo $row['title']; ?></a><?php echo gmdate('m-d', $row['date']); ?></li> <?php } ?> <?php } ?>
2、在模板文件夹中建立一个名为sheli.php的文件,代码如下
<?php // @shuyong.net if(!defined('EMLOG_ROOT')) {exit('error!');} $sortlog_id = _g('sortlog_id'); ?>
3、在模板文件options.php加入如下代码(ps:如没有此文件,请参考最后说明)
'sortlog_mun' => array( 'type' =>'text', 'name' =>'调用指定多个分类文章数量', 'description' =>'(选择blog模式就不必理会)', 'default' =>'10', ), 'sortlog_id' => array( 'type' =>'text', 'name' =>'调用指定多个分类文章id', 'description' =>'直接写分类id,多个用半角,隔开', 'default' =>'1,2,3,4', ),
最后在需要显示的地方调用代码<?php sort_logs(_g('sortlog_mun'));?>,如你的模板中没有options.php文件,请自行创建一下,代码如下
<?php /*@support tpl_options*/ !defined('EMLOG_ROOT') && exit('access deined!'); $options = array( //此处放3中代码 );
本代码在emlog5.3.1上测试正常,其他版本为做测试,如有疑问,请在下面留言给我。更多emlog教程
这个主题简介啊