cms网站内容如何自定义(篇文章不写如何建立频道内容模型功能?(图))
优采云 发布时间: 2021-12-18 20:05cms网站内容如何自定义(篇文章不写如何建立频道内容模型功能?(图))
德德cms还提供了频道内容模型定制功能,可以根据自己的需求搭建频道模型,类似于Kingcms的自定义模块。本文文章不描述如何创建频道内容模型,而是在首页或非自定义频道内容列表页面上,如果要调用内容中使用的SQL标签。
要使用SQL标签,必须了解数据库字段的最基本视图,尤其是使用自己添加的自定义模型字段,而不是系统默认的。
先看下面的调用语句,我一行一行的解释一下,可能更容易理解。
{dede:sql sql=" SELECT
dede_addonevents.aid,
dede_addonevents.typeid,
dede_addonevents.events_place,
dede_addonevents.begin_date,
dede_addonevents.end_date,
dede_events.ID,
dede_events.typeid,
dede_events.title,
dede_events.description,
dede_full_search.aid,
dede_full_search.typeid,
dede_full_search.url
FROM dede_addonevents , dede_events , dede_full_search
WHERE dede_addonevents.aid=dede_events.ID
AND dede_events.ID=dede_full_search.aid
ORDER BY dede_addonevents.aid DESC LIMIT 0, 4 " }
[field:events_place/] [field:title function="cn_substr(@me,38)"/] [field:description function="cn_substr(@me,38)"/] [field:begin_date/] - [field:end_date /]
{/dede:sql}
dede_addonevents 和 dede_events 是自定义频道后自动生成的表。它们在默认系统中不可用。dede_full_search 该表是存放Dedecms或自定义频道文章中所有内容路径的表。要调用这里的 URL,必须打开它。
dede_addonevents.aid,
dede_addonevents.typeid,
dede_addonevents.events_place,
dede_addonevents.begin_date,
dede_addonevents.end_date,
dede_events.ID,
dede_events.typeid,
dede_events.title,
dede_events.description,
这些是需要在自定义表中检索的字段。自定义频道生成时,Dedecms系统会自动添加.aid、.ID、.typeid等ID字段,实现更多的Table关联查询。
FROM dede_addonevents, dede_events, dede_full_search 这部分就不详细解释了,就是被调用表的名字。
下面是多表相关查询的条件语句
WHERE dede_addonevents.aid=dede_events.ID
AND dede_events.ID=dede_full_search.aid
当然,ID 必须与调用的内容相匹配,这样才不会出错。
ORDER BY dede_addonevents.aid DESC LIMIT 0, 4
这句话是数据显示的逆序。Mysql支持LIMIT 0, 4,非常方便设置起始位置。
[field:events_place/] [field:title function="cn_substr(@me,38)"/] [field:description function="cn_substr(@me,38)"/] [field:begin_date/] - [field:end_date /]
这部分是Dedecms的标签。自定义的时候会有字段名,和系统默认标签基本类似,方法也一样。只需检查系统的帮助标签问题。
从这句话可以看出,如果你对Dedecms的数据库表和字段了解清楚,基本上就可以调用你想调用的数据了。以后有空的话,看看能不能实现多个SQL查询。