模块功能是 SupeSite 系统的一个亮点,通过该功能您可以随心所欲的打造您需要的模板,什么地方显示什么模块,调用什么内容,如何样的风格,尽在您的掌握。
在模块管理中,通过选择现有的模板代码,根据自己的需要,添加到站点模板文件的任意位置中,便可以实现对论坛、UCenter Home 上面的信息的读取显示。选择不同的基本模块,可以查看该基本模块下面的已有模块代码。您也可以通过创建模块操作,根据自己的需求,进行模块添加操作。只获取数据的模块只能进行模板内部调用,其他类模板代码可以进行两种模式的调用显示:模板内部调用、JavaScript 调用。模板内部调用,此方式的调用代码可以放置于本系统内部模板的任意位置,但不能放置于其他系统的模板页面。采用批量缓存更新进制,效率高,服务器资源占有很少,速度快,推荐使用。JavaScript 调用,此方式的调用代码可以放置于任何站点的任何页面,适用范围广。数据会自动缓存并按指定的时间间隔进行周期更新。
通过创建不同的模块代码,并放置于模板中加以使用,就可以实现对论坛或 UCenter Home 上面的数据灵活显示。选择一个基本模块,在出现的创建模块向导页面中,根据站内对显示数据内容的需求进行自由设定,提交后就可以获得需要的模块代码了。选择模块风格为只获取数据时,模块将会把满足条件的数据读入到 $_SBLOCK[变量名] 数组中,您可以在模板文件对该数组变量进行自由操作,非常方便。
模块管理功能位于 SupeSite 后台 => 模块管理中,下面分为创建模块和模块管理两个子项,如下图所示:
一、创建模块
此处以调用“资讯”的数据为例,创建一个调用最新发布的资讯列表,共调用5条,要求调用出资讯的内容及所属分类的信息。
1、进入 SupeSite 后台,点击“模块管理”的“创建模块”。在此选择需要调用的数据类型,例如“资讯”。
如上图,填入模块名,例如“5条最新资讯”,模块名仅为一个标识,并无实际含义。“向导模式”,如果选择“高级模式”,那么需要自己写 SQL 语句来调用数据;如果选择“向导模式”,那么程序会根据您做的过滤规则调用数据。对于刚刚接触 SupeSite 的用户,建议使用“向导模式”。
2、过滤设置,这里设置的是对于资讯数据的调用过滤条件,可以根据实际的需要去做调整。例如仅需要调用某一个或几个指定的分类下的资讯数据,则可以在“站点分类”一项中,勾选对应的项目即可。这里如果设置了过滤条件,调用出来的资讯数据则需要满足这里的设置,如果要调用全部的资讯数据,则不用设置。本例中没有限定资讯的过滤条件,则不用设置。
3、排序设置:设置数据的显示顺序。可以依据发布时间、回复时间、查看数、回复数、精华级别、好评分、差评分来排序,排序的规则有:递增和递减。可以设置三个排序依据,第一排序的优先级最高,第二、第三的优先级递减。本例中要创建的为“最新资讯”,所以这里设置第一排序为“发布时间”,“递减”,则表明调用出的数据为最新的资讯。
4、数据设置:设置调用数据的条数,如果要调用指定条数的数据,请选择“显示指定数目的信息”;如果需要分页显示调用的数据,请选择“读取所有满足条件的信息,并分页显示”。
当选择“显示指定数目的信息”时,需要设置“起始数据行数”及“显示数据条数”。本例中需要调用最新的5条资讯,则“起始数据行数”设置为0,“显示数据条数”设置为5,这样调用出来的数据就是前5条数据。如果要调用第6条至第10条数据,就需要将“起始数据行数”设置为5,“显示数据条数”设置为5。
当选择“读取所有满足条件的信息,并分页显示”时,需要设置“每页显示数目”,例如设置为10,就表示一页需要显示10条数据。启用数据分页显示后,在下面的“显示风格”配置环节,您必须指定“变量名”,并且模块风格文件只能选择“只获取数据”,此外,缓存更新时间设置将无效,数据不会被缓存。列表信息将储存到 $_SBLOCK[变量名] 变量中,分页信息将储存到 $_SBLOCK[变量名_multipage] 变量中,您只需要在模板中对列表变量、分页变量加以灵活利用就可以了。
5、缓存设置和显示处理
缓存设置:设置数据缓存更新的时间间隔,默认为900,单位秒,即15分钟。数据设置选择“读取所有满足条件的信息,并分页显示”时,缓存更新时间设置将无效,数据不会被缓存。
显示处理:设置是否需要读取某些信息。
标题长度:设置数据调用后,将标题要截取的长度,单位字节。例如设置为20,则表示查询出的文章标题被截取为20字节长,其中已包含下面要设置的省略号的3个字节。
标题截取省略号:设置截取后的文章标题后是否添加省略号。
读取所在分类栏目名:选择“读取”,则可以将当前资讯所在的分类的信息一同调用出来。
读取详细内容信息:选择“读取”,则可以将当前资讯的内容读取出来。读取详细内容信息,这将增加服务器负担。如果您只想获取标题列表,请不要选择该项。
内容长度:含义同“标题长度”。
内容截取省略号:含义同“标题截取省略号”。
本例中需要调用出资讯的内容及所属分类的信息,则需如下图所示:
6、显示风格:这里要设定列表信息将储存到的变量名,选择或自己输入一个模块风格文件。
变量名:您可以把获取的数据集合放置到一个模块变量中。在模板文件中可以使用 $_SBLOCK[变量名] 来调用该数据集合。
选择模块风格文件:针对不同的模块,有不同的模块风格来控制该模块数据的显示样式。您可以通过 模块风格 功能,来为该模块添加、设置不同的风格。注意:这里如果选择“只获取数据”,那需要您自己写模块代码,将数据显示到页面,如果选择其他的风格文件,或在下面指定自己的风格文件,则可以获得站外调用时使用的 JS 代码。
自己输入模块风格文件:如果默认的模块文件中没有您需要的,您可以自己指定自己的模块风格文件地址。模块风格文件必须先上传,并放置于 styles 目录下面,后缀为 .html.php。
本例中我们要创建的调用为最新资讯,可以通过含义命名“变量名”为“new_news”,且该调用是用于本站的模板使用,后面需要在模板中手动编写模块的显示代码,故选择“只获取数据”即可。
至此,数据模型已经设置完毕,点击“提交”,您将获得一段这样的模板内部调用代码:
注意:此处创建的模板内部调用代码也可以直接通过手写生成,并不一定需要通过“创建模块”来创建,所以“创建模块”仅仅是创建模块的一个辅助工具,而不是决定工具。
二、使用获得的模板内部调用代码
注:模板代码此处不赘述。
将上面获取的代码复制到 SupeSite 的模板文件中(默认模板的目录为 templates/default),例如加入到 SupeSite “综合首页”的模板中 index.html.php 的合适的位置。
在模块的下一行开始书写模块显示的模板代码,例如:
从上面的代码可以看出该模块查询出的数据存储在了 $_SBLOCK[new_news] 这样的一个变量中,其中 new_news 就是在上一步中设定的“变量名”,如过当前设置为分页调用数据,则可以通过 $_SBLOCK[new_news_multipage] 这个变量直接输出分页的全部代码,无需再次书写任何模板代码。
从本例中的模板代码可以看到 $value[catname][catid] 、 $value[subject] 、 $value[message] 等变量的使用,而这些具体的数据参数是通过模块代码无法获得的。不过,可以通过下面的代码将该模块查询出的信息全部输出,其中包含了所有可以使用参数名称及该参数对应的数据值。了解清楚之后,需要将下面这段代码删除调用,再编写模块显示的模板代码。
三、管理模块
通过“管理模块”可以查看所有添加的模块,也可以通过“基本模块”分类查看。勾选模块前面的复选框,点击“提交”就可以删除模块。点击模块后面的编辑,则可以重新设置该模块的所有设置项目,并重新生成该模块。
新闻热点
疑难解答