• 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 –>

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

  • 相关阅读:
    【java】之位运算^,&,<<,>>,<<<,>>>总结
    【java】之算法复杂度o(1), o(n), o(logn), o(nlogn)
    【springboot】之自动配置原理
    【git】之使用shell脚本提交代码
    【linux】之日志查看
    【mysql】字段类型和长度的解释
    老生常谈:++a与a--区别
    关于tr:hover变色的问题
    服务器端渲染VS浏览器端渲染
    HTTP状态码302、303、307区别
  • 原文地址:https://www.cnblogs.com/wangblognet/p/3586543.html
Copyright © 2020-2023  润新知