建站技術網專注分享網站建設技術,網站建設教程,真正幫你學會做網站技術,輕松解決網站建設過程中遇到的常見問題,為廣大站長服務。 網站地圖 | 收藏本站 | 訂閱
域名投資,就來找米網,認準網址:www.zhaomi.cc 專業仿站,就到仿站網:www.fangzhan.org
  站內公告: ·帝國cms教程內容已更新,歡迎關注     ·建站技術網采用阿里云服務器,備案已通    
您當前的位置:建站技術網 > cms教程 > Phpcms教程

phpcms v9后臺添加文章時選擇相關文章可調用其它模型信息的方法

時間:2019-04-29 22:59:12  來源:網絡收集  整理: 建站技術網 www.txwlqq.com     點擊:0次

不過這個解決方法修改了一些文件,你可以根據自己的要求酌情使用。。我在這里也詳細說一下解決思路,以便后來人參考學習。

PHPCMSV9的相關文章,我們知道只有同模型的文章才可以選擇。其他模型的文章是選擇不成的,可以通過修改模型字段中的“相關參數”來實現選擇不同的 模型的文章,但這種方法其實只是實現了一半,雖然能選擇了,但是選擇保存后,再進入編輯是不會顯示的,基本相當于沒有實現嘛。

說一下我的解決方法。

以我的項目,舉個例子。有兩個模型,設計師(模型ID是1),設計案例(模型ID為2). 他們的模型ID很重要,后面要用到的。
我要在設計師的內容中添加設計案例的內容作為設計師的相關作品。

首先,在模型管理的設計師模型中,修改相關文章的“相關參數”這里面的值。
找到這行語句,把

復制代碼
代碼如下:

<input type='button' value="添加相關" onclick="omnipotent('selectid','?m=content&c=content& a=public_relationlist&modelid={MODELID}','添加相關文章',1)" class="button" nuoxin="width:66px;">

修改為:

復制代碼
代碼如下:

<input type='button' value="添加相關" onclick="omnipotent('selectid','?m=content&c=content&a=public_relationlist&modelid=2','添加相關文章',1)" class="button" nuoxin="width:66px;">

其實只是把上面的 {MODELID} 換成了目標模型ID(設計案例模型的ID)罷了。

這一步已經可以實現了選擇不同模型的文章。

接下來解決選擇后保存后再進入編輯不會顯示的問題。
還是找到型管理的設計師模型中,修改相關文章的“相關參數”這里面的值。


復制代碼
代碼如下:

<input type='button' value="顯示已有" onclick="show_relation({MODELID},{ID})" class="button" nuoxin="width:66px;">

修改為:

復制代碼
代碼如下:

<input type='button' value="顯示已有" onclick="show_relation(1,2,{ID})" class="button" nuoxin="width:66px;">

注意第一行的 onclick="show_relation({MODELID},{ID})"
我把他修改為了 onclick="show_relation(1,2,{ID})" , 這里我有必要解釋一下, {MODELID}是調用本文章的所屬模型ID
我修改為show_relation(1,2,{ID}),懂的朋友一看就知道,我多了一個參數。為什么多了一個參數呢,上面也說到了,默認只有同模型的文章可以選擇,所以這里做了一個目標模型ID。第一個參數是源模型ID,第二個參數是目標模型ID。

這里面修改后保存。

復制代碼
代碼如下:

show_relation()這個是JS函數,既然多了一個參數,那我們也要修改JS文件嘍。
找到statics/js/content_addtop.js的153,154行左右.為
function show_relation....
$.getJSON("?m=content;..........

我把這兩行修改為了:

復制代碼
代碼如下:

function show_relation(modelid,target_modelid,id) {
$.getJSON("?m=content&c=content&a=public_getjson_ids&modelid="+modelid+"&target_modelid="+target_modelid+"&id="+id, function(json){

JS修改過后,接下來我們修改最后的PHP文件。

找到/phpcms/modules/content/content.php 574行左右,也就是public function public_getjson_ids()這行左右。

在$modelid = intval($_GET['modelid']); 行后換行加入:

復制代碼
代碼如下:

$target_modelid = intval($_GET['target_modelid']);
在586行也就是$infos = array();這行后面換行加入:
$this->db->set_model($target_modelid);
$this->model = getcache('model', 'commons');
$this->db->table_name = $this->db->db_tablepre.$this->model[$target_modelid]['tablename'];
其中的“$this->db->table_name = $tablename;” 這一行是被上面第三行替換了。

OK。大功告成。
因為已經破壞了原生的相關文章功能了。如果你以后再使用相關文章的功能時,要記得先到模型的字段中的“相關參數”的值哦。

在前臺調用相關文章時,用下列標簽:

復制代碼
代碼如下:

if $relation!=''}
{php $rel = explode('|',$relation);}
{loop $rel $design_id} </p><p> {pc:get sql="select title,id,url,thumb from v9_design where id=$design_id"}
{loop $data $r}
<td class="pr5"><a title="{$r[title]}" target="_blank"><img src="https://www.jb51.net/blog/{$r[thumb]}" widths="190" heights="120" class="imgborder" alt="{$r[title]}" /></a><p class="mt5"><a title="{$r[title]}" target="_blank">{str_cut($r[title],'32')}</a></p></td>
{/loop}
{/pc}</p><p>{/loop}
{/if}
標簽:
文章標題:phpcms v9后臺添加文章時選擇相關文章可調用其它模型信息的方法
文章網址:http://www.txwlqq.com/cmsJiaocheng/Phpcms/9423.html
上一篇:phpcms v9更改后臺文章排序的方法
下一篇:PHPCMS v9 安全設置、防范教程
來頂一下
返回首頁
返回首頁
相關文章
    無相關信息
推薦資訊
如何通過SEO優化排名賺錢?SEO賺錢方法
如何通過SEO優化排名賺
seo優化教程:網站seo內容優化
seo優化教程:網站seo
SEO細節:企業SEO如何快速為新站做出效果
SEO細節:企業SEO如何
電商技術將如何發展?2018年有這五個大膽預測
電商技術將如何發展?
最新文章
欄目更新
欄目熱門
成人黄色