ZBLOG PHP调用随机文章、热门文章、热评文章程序

使用方法:

 

第一、在我们的主题目录中需要创建include.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;

}

 

然后就是在我们需要的界面模板中调用。

 

A - 随机文章

 

 代码如下 复制代码

{$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>

 

随机10篇文章

 

B - 热门文章

 

 代码如下 复制代码

{$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>

 

调用10篇热门文章

 

C - 热评文章

 

 代码如下 复制代码

{$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>

 

调用10篇热评文章。

 

具体的根据我们实际使用调用就可以。

时间: 2024-08-01 14:50:01

ZBLOG PHP调用随机文章、热门文章、热评文章程序的相关文章

ZBLOG调用随机文章、热门文章、热评文章的php代码

使用方法: 第一.在我们的主题目录中需要创建include.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

ZBLOG PHP调用文章摘要内容以及TAG标签调用例子

今天老蒋整理ZBLOG PHP调用代码文章较多,主要是把本地常用的一些代码整理到博客中,这样以后在使用的时候可以直接复制,省的每次需要用的时候再在本地的其他主题中寻找.我们在制作博客主题的时候内容页面.侧边栏或者底部栏会用到TAG标签的调用,以及在文章列表中可能会用到文章摘要,这样就省的我们在撰写文章的时候手工设置摘要,还可以统一控制截取的字数数量.   第一.ZBP文章列表摘要   1.默认样式    代码如下 复制代码 {$article.Intro}   这样调用的方法是在我们编辑发布文章

wordpress调用随机文章的一些例子

调用随机文章代码 <?php $rand_posts = get_posts('numberposts=10&orderby=rand'); foreach( $rand_posts as $post ) : ?> <!–下面是你想自定义的Loop–> <li><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></li

网站首页调用随机产品让快照天天更新

新的事物是大家都喜欢的,搜索引擎爬虫当然也喜欢,然后有seo朋友在网站优化过程都碰到过这样的问题,可能自己的网站天天更新原创,甚至文章秒收,但是首页快照还是落后甚至回档到n年前.笔者看过很多seo论坛上许多这样的咨询问题,大体上一些seo朋友解答都认为:一是网站本身没有坚持更新,二是百度数据库出问题.对该问题的处理办法要不是让他继续等待就是投诉快照,个人认为这不能从根本解决首页快照落后的问题. 笔者在这里建议,首页不能像门户网站一样保存大幅度的更新可以尝试调用随机文章和产品.随机文章和随机产品一

php添加文章时生成静态HTML文章的实现代码_php技巧

PHP生成静态文章HTML,有批量的生成,但比较标准的应该是在添加文章时就生成HTML文章,编辑时再重新生成HTML文章,删除文章时同样也样删除多余出来的HTML文章,这时批量生成就显得有点力不从心了,下面就介绍一下PHP在添加文章时如何生成静态的HTML文件.     简单的添加文章表单这里就不写了,下面的这些源码是接受表单传过来的值而执行的程序源码,可以先拿过去测试一下... 复制代码 代码如下: <?php ob_start(); require_once("../inc/conn.

5月开源热评 Top 榜:我已编程半生,归来仍是小孩!

5月"开源热评"活动于5月15日上线,并于5月31日结束,在半个月的活动时间内,许多小伙伴已经找到了正确的上热评的姿势. https://static.oschina.net/uploads/space/2017/0601/154306_Mfm4_2896879.png" > 受活动时间限制,5月有四位 oscer 的评论点赞数超过了 50:其中有两位未登录,很遗憾无法进行礼品发放:另外两位 @Raymin @Daniel-01 将获得活跃积分奖励和开源中国实物礼品奖励

c# 内存共享-c程序有没有可能调用一个正在运行并刷新的c#程序的数组

问题描述 c程序有没有可能调用一个正在运行并刷新的c#程序的数组 用c#写的接收数据程序数据,用c写的画图程序,然后呢,画图程序要调用接收数据程序收到的数据,有木有可能,这个内存共享该怎样实现呢

visual studio-网页调用本地自己用VS写的exe程序。

问题描述 网页调用本地自己用VS写的exe程序. 通过点击网页的一个按钮,自动打开默认地址的exe文件.求这个调用过程的代码 解决方案 网页中调用本地EXE程序 ActiveX网页调用本地EXE程序文件java的作用?它能写.exe程序吗? 解决方案二: 可以自定义协议来实现,并把协议添加到注册表里

weblogic部署成功,然后修改程序后不能热部署,程序报下面的错,怎么办

问题描述 weblogic部署成功,然后修改程序后不能热部署,程序报下面的错,怎么办 log4j:ERROR A "org.apache.log4j.xml.DOMConfigurator" object is not assignable to a "org.apache.log4j.spi.Configurator" variable. log4j:ERROR The class "org.apache.log4j.spi.Configurator&q