欢迎光临
我们一直在努力

phpcms V9 调用随机文章标签

phpcms/libs/functions/extention.func.php里面添加一个随机文章列表的函数:

/* * 随机读取文章列表 *
* @param modelid 模型ID 必须
* @paramcatid 栏目ID 可选,为0或未指定调去全模型的数据
* @param siteid 站点ID 可选,默认为1
* @paramthumb 是否必须有缩微图 可选,默认为0
* @param num 调用文章数量 可选,默认为10
* @return array 返回随机文章列表数组
*/
function suiji(modelid, catid,siteid = 1, thumb = 0,num = 10) {if(!modelid = intval(modelid))return false;        sitid = intval(siteid) ? intval(siteid) : 1;catid = intval(catid);num = intval(num);thumb = intval(thumb) ?"AND thumb != ''" : '';CATEGORYS = getcache('category_content_'.siteid,'commons');
                if(CATEGORYS[catid]['child']){catids_str = CATEGORYS[catid]['arrchildid'];
                                pos = strpos(catids_str,',')+1;
                                catids_str = substr(catids_str, pos);sql = " AND catid IN (catids_str)".thumb;
                } elseif(catid) {sql = " AND catid='catid'".thumb;
                } else {
                                sql =thumb;
                }
                c_db = pc_base::load_model('content_model');c_db->set_model(modelid);id = '';
                
                for(i=1;i<=num;i++)
                {
                                not =id ? " AND id NOT IN (id)": '';rs = c_db->query("SELECT * FROMc_db->table_name AS t1 JOIN (SELECT ROUND(RAND()*(SELECT MAX(id) FROM c_db->table_name WHERE status = 99sql)) AS id2) AS t2 WHERE t1.id>=t2.id2 and t1.status = 99 sqlnot ORDER BY t1.id ASC LIMIT 1");
                                while(r = mysql_fetch_array(rs,MYSQL_ASSOC)){
                                                return[]=r;
                                                id =id ? id.','.r['id'] : r['id'];
                                }
                }
                 returnreturn;
}

使用举例:

<div class="box">
     <h5 class="title-2">随机文章</h5>
     <ul class="content">
     {php data = suiji(1,0,1,0,15)}
                {loopdata r}
                <li> · <a href="{r[url]}" target="_blank" title="{r[title]}">{str_cut(r[title], 51, '')}</a></li>
                {/loop}
        </ul>
</div>

本修改不影响以后v9升级,因为extention.func.php文件就是官方专门用了让开放者放自己的扩展函数库的。

赞(2)
未经允许不得转载:飘云 » phpcms V9 调用随机文章标签
分享到: 更多 (0)