网站源码 > 建站教程 > 正文

织梦dedecms相互关联数据调用教程

我们在使用dedecms时候,经常会遇到这种场景,就是两种内容模型或者相同内容模型的数据相关调用,举个很简单的,我们在做装修设计网站需要将设计师和设计师相关的作品关联起来,

我们在使用dedecms时候,经常会遇到这种场景,就是两种内容模型或者相同内容模型的数据相关调用,举个很简单的,我们在做装修设计网站需要将设计师和设计师相关的作品关联起来,哪些设计师有哪些作品,哪些作品是哪个设计师做的,这样要怎么操作呢?下面我们以文章和图集模型互相关联为例子:

设计师栏目用普通文章模型 表名:dede_addonarticle
 
装修案例栏目用图片集模型 表名:wmd_addonimages

实现原理说一下:

就是利用两个或者同一模型,我们可以在图片集建立一个设计师的字段,然后发布普通文章时候,用名字进行标识,比如我们发布了一个图片集的作品,设计师字段里填写:张三,然后我们在文章模型建立一个标题为张三的设计师。通过织梦的dede:sql标签实现数据库关联查询。

 

IiBzcmM9
 
后台装修案例图集内容数据
 
IiBzcmM9
 
后台设计师文章内容数据:

IiBzcmM9
 
一、设计师内容页输出与TA相关联的案例
 
在设计师内容页模板中调用标签写法 
 
<h2>代表作品</h2>
<ul>
{dede:sql sql="SELECT arc.*,addf.* FROM `wmd_archives` arc LEFT JOIN `wmd_addonimages` addf ON arc.id=addf.aid WHERE arc.arcrank>-1 AND addf.designer=~title~ LIMIT 10"}
<li>
<a href="[field:id runphp=yes]$id=@me;$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]"><img src="[field:litpic/]">[field:title/]</a>
<p>风格:[field:fengge/]</p>
</li>
{/dede:sql}
</ul>
 
wmd_addonimages 是装修案例的附加表
 
addf.designer=~title~ 是获取数据的条件(装修案例中,设计师等于当前这个设计师)
 
风格:[field:fengge/] 支持所有自定义字段输出
 
 
二、每个案例内容页输出本案例的设计师

 
在装修案例内容页里,根据设计师名称获取设计师栏目里对应的这个设计师,获取TA的id、缩略图、其他等等...
 
在装修案例内容页模板中调用标签写法
 
<h2>本案例设计师简介</h2>
<div class="designer">
{dede:sql sql="SELECT arc.*,addf.* FROM `wmd_archives` arc LEFT JOIN `wmd_addonarticle` addf ON arc.id=addf.aid WHERE arc.arcrank>-1 AND arc.title=~designer~ LIMIT 1"}
<img src="[field:litpic/]">
<p>姓名:[field:title/]</p>
<p>职位:[field:zhiwei/]</p>
<p>
<a href="[field:id runphp=yes]$id=@me;$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]">更多详情</a>
<a href="[field:id runphp=yes]$id=@me;$url=GetOneArchive($id);@me=$url['arcurl'];[/field:id]">预约设计</a>
</p>
{/dede:sql}
</div>
 
 
wmd_addonarticle 是设计师所在的普通文章模型附加表
 
arc.title=~designer~ 是条件是获取数据的条件(文章标题等于当前这个设计师名称)
 
职位:[field:zhiwei/] 是自定义字段支持所有自定义字段输出

 
 

织梦dedecms相互关联数据调用教程

最新VIP资源