ecshop教程

ECSHOP调用最新文章在任何页面显示或者随机文章

ecshop教程 51源码 11-21 人阅读

ECSHOP在任何页面调用最新文章或者随机文章


第一步:

一、让最新文章变成随机文章

打开根目录下 index.php 文件

查找:

' ORDER BY a.article_type DESC, a.add_time DESC LIMIT ' $GLOBALS['_CFG']['article_number'];

修改为:

' ORDER BY RAND() LIMIT ‘ . $GLOBALS['_CFG']['article_number'];

第二步:

将以下代码保存为 new_articles_ec.lbi 文件


<?php$GLOBALS['smarty']->assign(‘new_articles’,    index_get_new_articles());function index_get_new_articles(){$sql = ‘SELECT a.article_id, a.title, ac.cat_name, a.add_time, a.file_url, a.open_type, ac.cat_id, ac.cat_name ‘ .‘ FROM ‘ . $GLOBALS['ecs']->table(‘article’) . ‘ AS a, ‘ .$GLOBALS['ecs']->table(‘article_cat’) . ‘ AS ac’ .‘ WHERE a.is_open = 1 AND a.cat_id = ac.cat_id AND ac.cat_type = 1′ .‘ ORDER BY a.article_type DESC, a.add_time DESC LIMIT ‘ . $GLOBALS['_CFG']['article_number'];$res $GLOBALS['db']->getAll($sql); $arr array();foreach ($res AS $idx => $row){$arr[$idx]['id']          = $row['article_id'];$arr[$idx]['title']       = $row['title'];$arr[$idx]['short_title'] = $GLOBALS['_CFG']['article_title_length'] > 0 ?sub_str($row['title'], $GLOBALS['_CFG']['article_title_length']) : $row['title'];$arr[$idx]['cat_name']    = $row['cat_name'];$arr[$idx]['add_time']    = local_date($GLOBALS['_CFG']['date_format'], $row['add_time']);$arr[$idx]['url']         = $row['open_type'] != 1 ?build_uri(‘article’, array(‘aid’ => $row['article_id']), $row['title']) : trim($row['file_url']);$arr[$idx]['cat_url']     = build_uri(‘article_cat’, array(‘acid’ => $row['cat_id']), $row['cat_name']);} return $arr;}?><meta http-equiv=”Content-Type” content=”text/html; charset=utf-8″><div><h2>最新文章</h2><div><!– {if $new_articles} –><!– {foreach name=new_articles from=$new_articles item=article} –><!– {if $smarty.foreach.new_articles.index lt 8} 限制文章显示数量 –><a href=”{$article.url}” title=”{$article.title|escape:html}”>{$article.short_title|truncate:30}</a><br /><!– {/if} –><!–{/foreach}–><!–{else}–>当前没有最新文章!<!– {/if} –></div></div>


再把这个文件上传到模板文件的 library 目录下。

再在你需要显视文章的位置加入以下代码


<!– #BeginLibraryItem “/library/new_articles_ec.lbi” –><!– #EndLibraryItem –>

如果你修改了第一步,那显视的是随机文章,如果没有修改,那就是最新文章。