zblog PHP版本一直没有出靠谱的列表插件,所以在网上整理了一下常用的列表,有些是可以直接在主题中进行使用,有些需要稍作修改,或者放在主题的include.php里面,部分转载自鸟儿博客和天兴博客。
获取分类ID为5的文章列表,并且包含子分类:
{php}$str='';$cate=5;$array=Getlist(10,$cate,null,null,null,null,array('has_subcate'=>true));foreach ($array as $article){$str.='<li><a href="'.$article->Url.'">'.$article->Title.'</a></li>';}echo $str;{/php}
来点高级的,父分类列表显示子分类,子分类列表显示同级分类,文章列表显示分类及同级分类。
{php} global $zbp; $str='';if ($type=='category'){ if ($category->ParentID>0) { //如果父分类存在,那么显示父分类下所有子分类的列表 $sidelistcategory=$zbp->GetCategoryByID($category->ParentID); $str.='<li class="cat-item"><a href="'.$sidelistcategory->Url.'">'.$sidelistcategory->Name.'</a></li>'; $where=array(array('=','cate_ParentID',$category->ParentID)); $array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null); foreach ($array as $cate){ $str.='<li class="cat-item"><a href="'.$cate->Url.'">'.$cate->Name.'</a></li>'; } echo $str; }else{ //如果父分类不存在,显示自身所有自分类的列表$str.='<li class="current-cat"><a href="'.$category->Url.'">'.$category->Name.'</a></li>'; $where=array(array('=','cate_ParentID',$category->ID)); $array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null); foreach ($array as $cate){ $str.='<li class="cat-item"><a href="'.$cate->Url.'">'.$cate->Name.'</a></li>'; } echo $str; } }elseif ($type=='article'){ $sidelistcategory=$zbp->GetCategoryByID($article->Category->ParentID); $str.='<li class="cat-item"><a href="'.$sidelistcategory->Url.'">'.$sidelistcategory->Name.'</a></li>'; $where=array(array('=','cate_ParentID',$article->Category->ParentID)); $array=$zbp->GetCategoryList(null,$where,array('cate_Order'=>'ASC'),null,null); foreach ($array as $cate){ if ($cate->ID==$article->Category->ID){ $str.='<li class="current-cat"><a href="'.$cate->Url.'">'.$cate->Name.'</a></li>'; }else{ $str.='<li class="cat-item"><a href="'.$cate->Url.'">'.$cate->Name.'</a></li>'; } } echo $str; }{/php}
获取使用次数最多的tag列表(top 10):
function Nobird_Theme_Get_nbTags(){//top10 tag global $zbp,$str; $str = ''; $array = $zbp->GetTagList('','',array('tag_Count'=>'DESC'),array(10),''); foreach ($array as $tag) { $str .= "<a href=\"{$tag->Url}\" title=\"{$tag->Name}\">{$tag->Name}</a>"; } return $str;}
获取随机的10个tag列表:
function Nobird_Theme_Get_rdTags(){// 随机10 tag global $zbp,$str; $str = ''; $array = $zbp->GetTagList('','',array('rand()'=>' '),array(10),''); foreach ($array as $tag) { $str .= "<a href=\"{$tag->Url}\" title=\"{$tag->Name}\">{$tag->Name}</a>"; } return $str;}
获取最新文章、最多浏览量、最多评论的文章列表:
function Nobird_Theme_Get_Link($type,$num){ global $zbp,$str,$order; $str = ''; if($type=='new'){ $order = array('log_PostTime'=>'DESC'); } if($type=='hot'){ $order = array('log_ViewNums'=>'DESC'); } if($type=='comm'){ $order = array('log_CommNums'=>'DESC'); } $where = array(array('=','log_Status','0')); $array = $zbp->GetArticleList(array('*'),$where,$order,array($num),''); $i=1; foreach ($array as $article) { $str .= "<li><i>{$i}</i><a href=\"{$article->Url}\" title=\"{$article->Title}\">{$article->Title}</a></li>"; $i++; } return $str; }
读者墙:
function Nobird_Theme_Get_Readers(){ global $zbp;$b = mktime(0,0,0,date('m')-1,date('d'),date('Y'));$e = mktime(0,0,0,date('m'),date('d')+1,date('Y'));$i=20;$sql = $zbp->db->sql->Select($zbp->table['Comment'],array('COUNT(comm_ID) AS cnt, comm_Name, comm_HomePage , comm_Email'),array(array('<>', 'comm_Name', '访客'),array('=', 'comm_AuthorID', 0),array('BETWEEN', 'comm_PostTime', $b, $e),array('CUSTOM', '1=1 GROUP BY comm_HomePage')),array('comm_PostTime' => 'DESC'),$i,null);$array=$zbp->db->Query($sql);$s ="\r\n"; foreach ($array as $comment) { $s .= '<li><a title="" target="_blank" data-original-title="[' . $comment['comm_Name'] . '] 近期点评' . $comment['cnt'] . '次"><img width="36" height="36" class="avatar avatar-36 photo" src="http://www.gravatar.com/avatar/' .md5(strtolower($comment['comm_Email'])).'&r=X&s=36" alt=""></a></li>'; $s .="\r\n"; } $s .="\r\n";return $s;}
生成的列表,如果想要外部调用,在return语句之前,增加一句产生实体文件的语句。
@file_put_contents($zbp->usersdir . 'theme/NBlue/include/abcdef.php', $str);
就可以在自身主题的任意位置通过:
{module:abcdef}进行调用。
外部php程序,可以使用:
echo file_get_contents('http://www.domain.com/zb_users/theme/NBlue/include/abcdef.php');//也就是产生文件的实际路径
进行调用。
外部静态页面,可以通过js引用以下文件进行动态js调用。
<?phprequire '../../../zb_system/function/c_system_base.php';require '../../../zb_system/function/c_system_admin.php';$zbp->Load();if (!$zbp->CheckPlugin('Nobird_CMS_2')) {$zbp->ShowError(48);die();}//Nobird_CMS_2 是主题ID$name = GetVars('name','GET');$file=$zbp->host . 'zb_users/theme/Nobird_CMS_2/include/'.$name.'.php';$strcontent=GetHttpContent($file);echo 'document.write(\''.$strcontent.'\');';?>
以上内容存为html2js.php,存放在主题文件夹下,然后在静态页面使用:
<script charset="utf-8" type="text/javascript" src="http://127.0.0.1/zb_users/theme/Nobird_CMS_2/html2js.php?name=Nobird_CMS_2_rdtags"></script>
进行调用(此处假设生成的文件名为Nobird_CMS_2_rdtags.php)。
直接用zblogphp的原生代码调用文章缩略图,代码如下:
<img src="{php}$pattern="/<[img|IMG].*?src=[\'|\"](.*?(?:[\.gif|\.jpg|\.png]))[\'|\"].*?[\/]?>/"; $content = $article->Content; preg_match_all($pattern,$content,$matchContent); echo $matchContent[1][0]; {/php}" />
这些代码前台编译出来的html代码就是:<img src="图片地址">,可以加在任意想调用的地方。
此方法的优点:由于是zblogphp本身的代码,所以对速度没有影响;缺点就是这个代码只能默认调用文章内的第一张图片,如果你的文章内没有图片的话,那就悲剧的什么都不显示了。所以这个方法只适用于每篇文章都习惯配图的朋友使用。当然这个代码可能会在后期有所更新,一起来期待zblogphp版强大的开发团队们吧。
温馨提示
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请后台提交工单处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,请使用WINRAR解压,如遇到无法解压的请后台提交工单!
【免责声明】:
本站所发布的一切资源仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则,一切后果请用户自负。本站信息来自网络,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑中彻底删除上述内容。如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。
【关于转载】:
本站尊重互联网版权体系,本站部分图片、文章大部分转载于互联网、所有内容不代表本站观点、不对文章中的任何观点负责、转载的目的只用于给网民提供信息阅读,无任何商业用途,所有内容版权归原作者所有
如本站(文章、内容、图片、视频)任何资料有侵权,先说声抱歉;麻烦您请联系请后台提交工单,我们会立即删除、维护您的权益。非常感谢您的理解。
【附】:
二○○二年一月一日《计算机软件保护条例》第十七条规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬!鉴于此,也希望大家按此说明研究软件!
注:本站资源来自网络转载,版权归原作者和公司所有,如果有侵犯到您的权益,请第一时间联系我们处理!
-----------------------------------------------------------------------------------------------------------
【版权声明】:
一、本站致力于为源码爱好者提供国内外软件开发技术和软件共享,着力为用户提供优资资源。
二、本站提供的源码下载文件为网络共享资源,请于下载后的24小时内删除。如需体验更多乐趣,还请支持正版。
三、如有内容侵犯您的版权或其他利益的,请编辑邮件并加以说明发送到站长邮箱。站长会进行审查之后,情况属实的会在三个工作日内为您删除。
-----------------------------------------------------------------------------------------------------------
源码村资源网 » zblogphp常用的单独调用文章/tag/缩略图等语句