1. 程式人生 > >phpcms v9呼叫全站最新文章(最近更新所有內容)

phpcms v9呼叫全站最新文章(最近更新所有內容)

第一步 修改 phpcms\modules\content\classes  content_tag.class.php  在最後面的 } 上面新增
public function newcontent($data){
$num = intval($data['limit']) ? intval($data['limit']) : '20';
// 設定排序
switch($data['order']){
case '1':
$order = ' `id` ASC ';
break;
case '2':
$order = ' `id` DESC ';
break;
case '3':
$order = ' `inputtime` ASC ';
break;
case '4':
$order = ' `inputtime` DESC ';
break;
case '5':
$order = ' `updatetime` ASC ';
break;
case '6':
$order = ' `updatetime` DESC ';
break;
default:
$order = ' `id` DESC ';
}
if($data['catid']){
$catids = explode(',', $data['catid']);
foreach($catids as $catid){
$catid = intval($catid);
if(empty($catid))continue;
$this->set_modelid($catid);
$where = $this->category[$catid]['child'] ? ' `catid` IN ('.$this->category[$catid]['arrchildid'].')' : " `catid` = $catid";
$datas = $this->db->select($where, '*', $num, $order);
$data[$catid]['data'] = $datas;
// 記錄本次的文章數
$data['num'][] = count($datas);
$model_num++;
}
}else{
$models = getcache('model', 'commons');
foreach($models as $model){
$this->db->set_model($model['modelid']);
$datas = $this->db->select('', '*', $num, $order);
$data[$model['modelid']]['data'] = $datas;
// 記錄本次的文章數
$data['num'][] = count($datas);
$model_num++;
}
}
if($data){
// 獲取每個模型應該擷取的條數
$num = ceil($num/$model_num);
// 迴圈條數記錄用於找出條數不滿足的數量然後進行平均
$w_num = $w_num_t = '';
foreach($data['num'] as $num_t){
if($num_t < $num){
$w_num += $num-$num_t;
$w_num_t++;
}
}
// 判斷是否有不滿足平均數的 如果有那麼就增加平均值
if($w_num_t){
$num += ceil($w_num/($model_num-$w_num_t));
}
$datas = array();
foreach($data as $r){
$r_n = '';
if(is_array($r['data']))
foreach($r['data'] as $r_t){
$datas[] = $r_t;
if(++$r_n == $num)break;
}
}
return $datas;
}else{
return false;
}
}

第二步:模板呼叫 

其實就和預設的文章列表呼叫差不多


{pc:content action="newcontent" }


引數說明:

catid: 可有可無  加了就只調用指定欄目的資訊  多個欄目請使用英文半形的 ,間隔


order:排序 引數值:1-7  具體的含義在程式碼裡面很容易看明白 不祥述


num:呼叫數量  不指定預設呼叫20條

相關推薦

phpcms v9呼叫全站最新文章最近更新所有內容

第一步 修改 phpcms\modules\content\classes  content_tag.class.php  在最後面的 } 上面新增 public function newcontent($data){ $num = intval($data['limi

phpcms v9呼叫指定欄目名稱、url、圖片、描述、子欄目、文章

1.將phpcms下載好之後,通過install.php進行安裝,之後將需要給使用者顯示的前臺頁面放進phpcms下的templates下的default下的content中記得清除快取並且生成首頁,呼叫js的方法是<?php echo JS_PATH?>或者{J

DedeCms呼叫全站相關文章方法

  織夢dedecms 有個標籤可以呼叫相關文章,通過下面的修改可以呼叫全站的相關文章,文章頁內顯示相關文章內容,可以提高關鍵詞密度,還是挺不錯的。 <div>       <dl>&

phpcms v9呼叫當前欄目的同級欄目的幾種方法

(1)單網頁:     {loop $arrchild_arr $cid}<!--只適應用單網頁--> <li {if $catid==$cid}class="cur_link"{/if}><a href="{$CATEGORYS[$cid][

phpcms v9網站搬家的方法含域名更改

1、 在新的主機空間把phpcms安裝好。 新安裝的版本一定要和準備搬遷的版本一樣,否則可能會出現問題。 在新安裝時要把資料庫字首改為與原網站一樣的設定。 在新安裝時要把資料庫字串集改為與原網站一樣的設定。 phpcms資料庫設定可以在/caches/config

修改phpcms v9關聯其他模型文章

一、首先找到\phpcms\modules\content\templates\relationlist.tpl.php 原始碼: echo form::select_category('',$catid,'name="catid"',L('please

織夢模板調用最新文章標簽、推薦內容標簽、熱門文章標簽、欄目標簽

ubd erb -- rcu 文章 pen 標簽 織夢 cli 織夢模板調用最新文章標簽、推薦內容標簽、熱門文章標簽、欄目標簽 <div> <!--最新文檔--> {dede:arclist row=10 titlelen=42}

phpcms切換中英文網頁的方法不用解析二級域名phpcms完成pc和手機端切換同一域名

msu 可用 解決 start 這就是 arp header 欄目 profile AA。phpcms進行雙語切換方法(不用解析二級域名) phpcms進行兩種語言的切換,有一把部分的人都是進行的二級域名的解析,這樣的話可能會有一部分的麻煩,我這裏有一種方法可以不用解析二級

Android 呼叫相機、相簿適配6.0

又好久沒有寫部落格了,好習慣不能斷,該寫點就得寫點,今天帶來的筆記是關於Android 專案呼叫系統相機 與呼叫系統相簿的之後拿到照片的基本操作,我感覺好多人還是不太熟悉的哈。專案相容 Android 5.0裝置、Android 6.0裝置、Android 7.0、Android 8.0

JAVA高併發---收藏的好文章持續更新

JAVA高併發—AQS詳解(轉載) 學習前因   本來對多執行緒略懂,最近忽然看到了CountDownLatch 的用法,忽然想簡單看看它的原理,瞭解一下它阻塞執行緒的方法,我只知道阻塞執行緒的lock 和wait/notifyAll ,才發現原來還有LockSupport 的p

Android呼叫本地js方法不顯示h5介面

有得時候在開發過程中會遇到,需要呼叫js的一些方法,又不需要顯示h5介面。比如,在你開發的產品中,PC、h5,移動端(Android、IOS)都需要使用到同一個演算法,而且這個演算法又非常的複雜,若每個端都寫一邊,不僅非常浪費時間,而且如果演算法設計到複雜的數字計算,那麼就可

關於FIFO頁面淘汰演算法和LRU最近最少使用演算法詳細說明

舉例說明:例如在一個虛存系統中,程序的記憶體空間為3頁,已開始記憶體為空,有以下訪問序列:2,3,2,1,5,2,4,5,3,2,5,2。分別用以上兩種方法分別計算缺頁次數。 A:使用FIFO(頁面淘汰演算法) FIFO:先進先出,也就是, 先調2(缺) 記憶體為2.

SVN初學者學習使用文章轉自文件

方法/步驟 簽出原始碼到本機 在本機建立資料夾StartKit,右鍵點選Checkout,彈出如下圖的窗體: 在上圖中URL of Repository:下的文字框中輸入svn server中的程式碼庫的地址,其他預設,點選OK按鈕,就開始簽出原始碼了。 說明:上

函式的呼叫10-29日第九週週一

1.一個奇怪的函式呼叫程式 問題:如何完成兩個資料的交換? 分析:同學A和同學B如何交換雙方座位?都會輕功的話,雙方不用著地且同時朝對方的座位飛過去即可。但我們都是凡人,怎麼辦? 通過細心思考,聰明的我們發現通過以下步驟即可: 步驟1:同學A先離開自己的座位

PS系列最新應用包括破解的方法

這是小編第一次在CSDN分享東西,還望各位老鐵多多支援。 首先,大家可以在一下網址進入Adobe的官網: 進入官網後,找到Creative Cloud(一般都位於第一個),然後點選下載 註冊Adobe賬號並登入,然後進入下載介面 下載完再登入一次,進入如下介面: 小編

golang 呼叫第三方api 例項返回json並解析

解析json 並接收 package main import ( "encoding/json" "fmt" "os" ) type ConfigStruct struct { Host string `json:"host"` Port

關於javascript 立即呼叫的函式 IIFE Immediately Invoked Function Expression

4.1 正常寫法const pkgConf = require('pkg-conf'); async function main(){ const config = await pkgConf('unicorn'); console.log(config.rainbo

一篇編譯核心的詳細配置文章超長-強烈推薦

前言之前言:誰是這篇文章的讀者? 不習慣讀英文資料的非LINUX高手 音效卡不響光碟機不轉連不上網等等,只要有問題就行 開發嵌入式作業系統 現在流行的ODL(only disk linux)中做核心部分,那些文章不介紹此點內容。我正在做 ,完工後整理資料。 B

最新ueditor1.4.3.3版本修改自定義上傳路徑

專案需求:例如tomcat在c盤,檔案上傳到d盤,縱觀ueditor的文件說明沒有該功能,預設都上傳的專案的路徑下,要想修改此功能則必須修改ueditor的java原始碼和js原始碼。先上修改後的效果圖,要實現這樣的功能,修改的地方比較多,個人建議最好還是別改了(如果不想研

JMeter做壓力測試,先呼叫第一介面,拿到返回值後去呼叫第二個介面小白級入門

1、開啟介面建立執行緒組,並取一個名稱 2、執行緒組下建立一個http請求,並進行配置 3、指定動態引數 名字必須和上面第二步介面中${XXX}符號裡面的名稱保持一致