發(fā)布時(shí)間:2021-03-30
欄目:帝國(guó)新聞
對(duì)于一般的CMS用戶,CMS系統(tǒng)默認(rèn)的標(biāo)簽封裝的越完整通過活化,使用越簡(jiǎn)單越受歡迎落地生根,但如果是個(gè)性化數(shù)據(jù)調(diào)用需求較多的用戶,通常都會(huì)感覺(jué)系統(tǒng)內(nèi)置的標(biāo)簽局限性太大健康發展,不夠靈活有效保障,特別是懂PHP或MYSQL的站長(zhǎng)朋友們,更希望能夠很方便的直接通過(guò)SQL語(yǔ)句在模板中自由調(diào)用數(shù)據(jù)庫(kù)中的各種數(shù)據(jù)長效機製。
我對(duì)PHP和MYSQL不能算精通講實踐,但能算CMS的深度用戶,很多時(shí)候去測(cè)試一款CMS時(shí)奮戰不懈,都會(huì)考慮這款CMS是否支持直接在模板中通過(guò)SQL語(yǔ)句來(lái)讀取CMS系統(tǒng)內(nèi)的或者外部數(shù)據(jù)源的數(shù)據(jù)市場開拓。很多時(shí)候,希望突破內(nèi)置標(biāo)簽的局限性取得顯著成效,靈活自由的以各種形式來(lái)調(diào)用CMS數(shù)據(jù)庫(kù)中的數(shù)據(jù)新模式,特別是不同程序間的數(shù)據(jù)整合調(diào)用時(shí),支持SQL語(yǔ)句的標(biāo)簽?zāi)軌蚴∪ズ芏嗦闊?/p>
那么本文中下面落葉對(duì)帝國(guó)CMS不容忽視、PHPCMS及DEDECMS這三款CMS中的支持通過(guò)SQL語(yǔ)句直接調(diào)用數(shù)據(jù)的標(biāo)簽作一些對(duì)比分析組織了。
1)帝國(guó)CMS中直接通過(guò)SQL語(yǔ)句調(diào)用數(shù)據(jù)的標(biāo)簽:
如顯示欄目id為1的10條新聞表記錄
[ecmsinfo]"select * from phome_ecms_news where classid=1 order by id desc limit 10"帝國(guó)cms批量助手,10,30,0,24,1,0[/ecmsinfo]
實(shí)際上帝國(guó)CMS中支持直接SQL語(yǔ)句調(diào)用數(shù)據(jù)的標(biāo)簽不止ecmsinfo這一個(gè)標(biāo)簽,所謂的靈動(dòng)標(biāo)簽 (e:loop)不要畏懼、文字調(diào)用標(biāo)簽phomenews等服務為一體。
我看到帝國(guó)CMS官方論壇有用戶問(wèn)過(guò),帝國(guó)CMS的支持SQL語(yǔ)句的標(biāo)簽是否支持讀取外部數(shù)據(jù)源逐漸顯現,管理員WC的回復(fù)是只支持同一個(gè)數(shù)據(jù)庫(kù)中的數(shù)據(jù)的讀取全會精神,其實(shí)這個(gè)不難理解,實(shí)際是就帝國(guó)CMS的SQL數(shù)據(jù)調(diào)用功能不支持外部數(shù)據(jù)源的調(diào)用,因?yàn)槿绻嵌嗵壮绦虬惭b在同一個(gè)數(shù)據(jù)庫(kù)下集中展示,那本身就可以當(dāng)作同一套程序來(lái)處理數(shù)據(jù)實力增強,如同一數(shù)據(jù)庫(kù)中安裝了論壇 和帝國(guó)CMS,直接把論壇的數(shù)據(jù)表當(dāng)作帝國(guó)CMS的自定義數(shù)據(jù)表來(lái)調(diào)用一樣的道理探索創新。
帝國(guó)CMS的SQL標(biāo)簽的優(yōu)點(diǎn)再于帶來全新智能,SQL語(yǔ)句查詢結(jié)果本身在標(biāo)簽內(nèi)部作了處理,用戶可以直接在標(biāo)簽中定義標(biāo)題截取長(zhǎng)度新產品、是否顯示欄目名稱去完善、時(shí)間格式化等,這些在PHPCMS及DEDECMS的類(lèi)似標(biāo)簽中都是需要直接在標(biāo)簽的innertxt中自己作邏輯判斷和調(diào)用函數(shù)處理的長遠所需,這點(diǎn)對(duì)于普通用戶還是比較方便的求索。畢竟帝國(guó)cms軟件采集,調(diào)用文章列表規模,要個(gè)性化的地方也就基本標(biāo)題顯示長(zhǎng)度穩定發展,時(shí)間顯示格式,是否在前面顯示欄目名及列表的模板樣式聯動,帝國(guó)這樣的標(biāo)簽都可以很好的實(shí)現(xiàn)增持能力,夠用了。
2)PHPCMS中的直接通過(guò)SQL語(yǔ)句調(diào)用數(shù)據(jù)的標(biāo)簽:GET標(biāo)簽
如帶分頁(yè)行業內卷,示例(調(diào)用欄目ID為1通過(guò)審核的10條信息追求卓越,標(biāo)題長(zhǎng)度不超過(guò)25個(gè)漢字,顯示更新日期能力和水平,帶分頁(yè))
{get sql="select * from phpcms_content where catid=1 and status=99 order by updatetime desc" rows="10" page="$page"}
標(biāo)題:{str_cut($r[title], 50)} URL:{$r[url]} 更新日期:{date('Y-m-d', $r[updatetime])}
{/get}
在我看來(lái)GET標(biāo)簽是PHPCMS中好用的標(biāo)簽指導,要查詢什么數(shù)據(jù),直接寫(xiě)好SQL語(yǔ)句國際要求,使用GET標(biāo)簽流動性,并且可定自定義是否分頁(yè),分頁(yè)每頁(yè)顯示的條數(shù)競爭激烈,分頁(yè)的URL規(guī)則等等持續創新,GET標(biāo)簽之間的內(nèi)容為讀取出來(lái)的數(shù)組變量,可直接使用PHP模板語(yǔ)法輸出空白區,亦可調(diào)用全局函數(shù)或PHP原生函數(shù)進(jìn)行數(shù)據(jù)處理后輸出協調機製。整個(gè)處理過(guò)程很適合PHP程序員的思維。
GET標(biāo)簽的另一個(gè)優(yōu)勢(shì)是能夠很方便的調(diào)用外部數(shù)據(jù)源形勢,即其它程序的MYSQL數(shù)據(jù)庫(kù)實踐者,并且不管是否在同一MYSQL中,不管是不在同一臺(tái)服務(wù)器約定管轄,只需要在PHPCMS后臺(tái)數(shù)據(jù)源管理處添加外部數(shù)據(jù)源的主機(jī)如localhost或服務(wù)器IP數據,然后填寫(xiě)數(shù)據(jù)庫(kù)名創新的技術、數(shù)據(jù)庫(kù)用戶名及數(shù)據(jù)庫(kù)密碼,測(cè)試連接成功后顯著,后面即可直接在模板中使用GET標(biāo)簽調(diào)用外部數(shù)據(jù)源快速增長。
\
get 標(biāo)簽調(diào)用外部數(shù)據(jù)示例(調(diào)用數(shù)據(jù)源為bbs,分類(lèi)ID為1的10個(gè)最新主題占,主題長(zhǎng)度不超過(guò)25個(gè)漢字高質量,顯示更新日期):
{get dbsource="bbs" sql="select * from cdb_threads where fid=1 order by dateline desc" rows="10"}
主題:{str_cut($r[subject], 50)} URL:http://www.pmume.com/viewthread.php帝國(guó)cms采集軟件?tid={$r[tid]} 更新日期:{date('Y-m-d', $r[dateline])}
{/get}
這點(diǎn)是非常方便的,一個(gè)文章主站+論壇 激發創作,然后直接在主站首頁(yè)調(diào)用論壇中的帖子前景,使用GET標(biāo)簽,可以以任何想實(shí)現(xiàn)的方式來(lái)讀取論壇數(shù)據(jù)庫(kù)的帖子增幅最大,而其它程序中則只能通過(guò)JS調(diào)用或者通過(guò)改程序來(lái)實(shí)現(xiàn)大大提高。
GET標(biāo)簽的優(yōu)勢(shì)還在于,如果是進(jìn)行二次開(kāi)發(fā)研究成果,新建一個(gè)abc.php頁(yè)面,只需要引用PHPCMS的公共文件完善好,即可直接使用PHPCMS的模板引擎大面積,然后在模板目錄下新建一個(gè)abc.html即可在模板中使用GET標(biāo)簽調(diào)用任何想調(diào)用的內(nèi)容。
如果MYSQL數(shù)據(jù)庫(kù)不在同一服務(wù)器問題分析,在PHPCMS后臺(tái)填好數(shù)據(jù)庫(kù)設(shè)置有望,然后在遠(yuǎn)程服務(wù)器的MY.INI文件中設(shè)置禁用域名DNS反向解析,然后使用GET標(biāo)簽遠(yuǎn)程調(diào)用導向作用,速度會(huì)和同一臺(tái)服務(wù)器相差無(wú)幾方案,跨服務(wù)器數(shù)據(jù)調(diào)用非常方便。
不過(guò)十大行動,我還不滿足于此左右,還希望GET標(biāo)簽?zāi)苤苯诱{(diào)用其它類(lèi)型的數(shù)據(jù)庫(kù)數(shù)據(jù),如SQL server中的數(shù)據(jù)綜合措施,如果能實(shí)現(xiàn)這樣可靠保障,那跨語(yǔ)言平臺(tái)整合那將非常方便了。如主站是PHPCMS的設計標準,論壇是.NET開展,這樣如果GET標(biāo)簽也支持讀SQL server中的數(shù)據(jù),那真是無(wú)敵了發揮重要帶動作用。
3)DEDECMS中直接通過(guò)SQL語(yǔ)句調(diào)用數(shù)據(jù)的標(biāo)簽:SQL標(biāo)簽
如調(diào)用文章表中會(huì)員ID為1的會(huì)員發(fā)布的10條文章
{dede:sql sql='Select * from dede_archives where mid=1 limit 10'}
<a href='/plus/view.php?aid=[field:id/]' target='_blank'>[field:title/]</a>
{/dede:sql}
從DEDECMS中SQL標(biāo)簽文檔來(lái)看意向,該SQL標(biāo)簽直接使用SQL語(yǔ)句來(lái)調(diào)用簡(jiǎn)單的文章列表,還是非常方便的文化價值,處理好的innertxt也支持用 PHP函數(shù)處理后輸出形式,這點(diǎn)和PHPCMS中挺像置之不顧,但是貌似沒(méi)有PHPCMS的GET標(biāo)簽強(qiáng)大,不支持分頁(yè)進一步提升,更不會(huì)支持分頁(yè)的自定義URL格式空間廣闊。
當(dāng)然,一般的用于側(cè)邊欄調(diào)用一些內(nèi)置標(biāo)簽不方便實(shí)現(xiàn)的數(shù)據(jù)改革創新,夠用了知識和技能。
文章地址:http://cdgoodok.com/article/diguo/dgPHPCMSjzmdbezcSQLtydbq.html
- 1選用Phpcms v9建站 優(yōu)化之后流量飛起來(lái)
- 2如何選擇CMS 1所見(jiàn)即所得的編譯器
- 3DEDECMS轉(zhuǎn)向帝國(guó)CMS之異同
- 4PHPCMS中$description格式化的方法
- 5帝國(guó)CMS結(jié)合項(xiàng)列表屬性篩選實(shí)例教程
- 6疑是帝國(guó)CMS(EmpireCMS v 6.0)最新BUG
- 7專訪帝國(guó)軟件的創(chuàng)造者:仍然在路上的80后
- 8帝國(guó)5.0和discuz6.1整合教程
- 9帝國(guó)網(wǎng)站管理系統(tǒng)CMS 7.0正式版發(fā)布
- 10專訪ECMS作者王猛 成功的人應(yīng)該耐得住寂寞