建站技术网专注分享网站建设技术,网站建设教程,真正帮你学会做网站技术,轻松解决网站建设过程中遇到的常见问题,为广大站长服务。 收藏本站 | 订阅
域名投资,就来找米网,认准网址:www.zhaomi.cc 专业仿站,就到仿站网:www.fangzhan.org
  站内公告: ·帝国cms教程内容已更新,欢迎关注     ·建站技术网采用阿里云服务器,备案已通    
您当前的位置:首页 > cms教程 > zblog教程

zblog php调用热门文章,随机文章和热评文章的方法

时间:2017-12-20 23:55:18  来源:网络收集  整理: 建站技术网 www.jzjsw.com     点击:1次

在做zblog企业模板的时候常常需要调用热门文章,随机文章和热评文章,下面给大家介绍

一个非插件调用随机文章的方法。

第一步:在主题中创建include.php,如果有的话就直接加入以下代码:

PHP
/**
* 获取文章列表
* @param int $count 数量
* @param null $cate 分类ID
* @param null $auth 用户ID
* @param null $date 日期
* @param null $tags 标签
* @param null $search 搜索关键词
* @param null $order 排序
* @param null $option
* @return array|mixed
*/
function TcgetList($count = 10, $cate = null, $auth = null, $date = null, $tags = null, $search = null, $option = null,$order=null) {
global $zbp;
if (!is_array($option)) {
$option = array();
}
if (!isset($option['only_ontop']))
$option['only_ontop'] = false;
if (!isset($option['only_not_ontop']))
$option['only_not_ontop'] = false;
if (!isset($option['has_subcate']))
$option['has_subcate'] = false;
if (!isset($option['is_related']))
$option['is_related'] = false;
if ($option['is_related']) {
$at = $zbp->GetPostByID($option['is_related']);
$tags = $at->Tags;
if (!$tags)
return array();
$count = $count + 1;
}
if ($option['only_ontop'] == true) {
$w[] = array('=', 'log_IsTop', 0);
} elseif ($option['only_not_ontop'] == true) {
$w[] = array('=', 'log_IsTop', 1);
}
$w = array();
$w[] = array('=', 'log_Status', 0);
$articles = array();
if (!is_null($cate)) {
$category = new Category;
$category = $zbp->GetCategoryByID($cate);
if ($category->ID > 0) {
if (!$option['has_subcate']) {
$w[] = array('=', 'log_CateID', $category->ID);
} else {
$arysubcate = array();
$arysubcate[] = array('log_CateID', $category->ID);
foreach ($zbp->categorys[$category->ID]->SubCategorys as $subcate) {
$arysubcate[] = array('log_CateID', $subcate->ID);
}
$w[] = array('array', $arysubcate);
}
}
}
if (!is_null($auth)) {
$author = new Member;
$author = $zbp->GetMemberByID($auth);
if ($author->ID > 0) {
$w[] = array('=', 'log_AuthorID', $author->ID);
}
}
if (!is_null($date)) {
$datetime = strtotime($date);
if ($datetime) {
$datetitle = str_replace(array('%y%', '%m%'), array(date('Y', $datetime), date('n', $datetime)), $zbp->lang['msg']['year_month']);
$w[] = array('BETWEEN', 'log_PostTime', $datetime, strtotime('+1 month', $datetime));
}
}
if (!is_null($tags)) {
$tag = new Tag;
if (is_array($tags)) {
$ta = array();
foreach ($tags as $t) {
$ta[] = array('log_Tag', '%{' . $t->ID . '}%');
}
$w[] = array('array_like', $ta);
unset($ta);
} else {
if (is_int($tags)) {
$tag = $zbp->GetTagByID($tags);
} else {
$tag = $zbp->GetTagByAliasOrName($tags);
}
if ($tag->ID > 0) {
$w[] = array('LIKE', 'log_Tag', '%{' . $tag->ID . '}%');
}
}
}
if (is_string($search)) {
$search=trim($search);
if ($search!=='') {
$w[] = array('search', 'log_Content', 'log_Intro', 'log_Title', $search);
}
}
if(!empty($order)){
if($order=='new'){
$order = array('log_PostTime'=>'DESC');
}
if($order=='hot'){
$order = array('log_ViewNums'=>'DESC');
}
if($order=='comm'){
$order = array('log_CommNums'=>'DESC');
}
if($order=='rand'){
$order = array('rand()'=>' ');
}
}
$articles = $zbp->GetArticleList('*', $w, $order, $count, null, false);
if ($option['is_related']) {
foreach ($articles as $k => $a) {
if ($a->ID == $option['is_related'])
unset($articles[$k]);
}
if (count($articles) == $count){
array_pop($articles);
}
}
return $articles;
}

第二步:在模板中直接调用就可以了

热门文章调用

PHP
{$array=TcgetList(10,null,null,null,null,null,null,'hot');}
<ul id="related">
{foreach $array as $related}
<li><span class="time">{$related.Time('m-d')}</span><span class="title"><a href="{$related.Url}" title="{$related.Title}">{$related.Title}</a></span></li>
{/foreach}
</ul>

随机文章调用:

PHP
{$array=TcgetList(10,null,null,null,null,null,null,'rand');}
<ul id="related">
{foreach $array as $related}
<li><span class="time">{$related.Time('m-d')}</span><span class="title"><a href="{$related.Url}" title="{$related.Title}">{$related.Title}</a></span></li>
{/foreach}
</ul>

热评文章调用:

PHP
{$array=TcgetList(10,null,null,null,null,null,null,'comm';}
<ul id="related">
{foreach $array as $related}
<li><span class="time">{$related.Time('m-d')}</span><span class="title"><a href="{$related.Url}" title="{$related.Title}">{$related.Title}</a></span></li>
{/foreach}
</ul>

具体样式在实际调用中自己进行修改就好了!

文章标题:zblog php调用热门文章,随机文章和热评文章的方法
文章网址:http://www.jzjsw.com/cmsJiaocheng/zblog/41.html
上一篇:zblog PHP分类列表调用方法
下一篇:zblog php调用指定分类文章包括子分类的方法
来顶一下
返回首页
返回首页
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表
推荐资讯
如何通过SEO优化排名赚钱?SEO赚钱方法
如何通过SEO优化排名赚
seo优化教程:网站seo内容优化
seo优化教程:网站seo
SEO细节:企业SEO如何快速为新站做出效果
SEO细节:企业SEO如何
电商技术将如何发展?2018年有这五个大胆预测
电商技术将如何发展?
相关文章
    无相关信息
栏目更新
栏目热门