教程:AKCMS 4.X中实现调用主题列表和地址,相当于5.0的getsections

在制作akcms模板中,考虑怎么实现专题。

我想到的有两种方法实现,一是用栏目+自定义模块,二是用主题。
相较来说,前者实现比较简单,后者比较复杂,特别是我想用一个页面来展示所有专题内文章,这个得用ajax或者iframe。

最终我还是选择后者,因为akcms目前还不支持多栏目,而一般的专题文章是同时属于栏目和专题的。

不过做的时候才发现,4.x中的主题相关功能还不完整,无法简单的调用专题列表和地址。
自己鼓捣了一下,最终还是自己实现出来了。

首先,需要在基本设置中,将主题的默认首页改掉,改为/XXX/[sectionalias].html,XXX为你愿意弄的目录。

然后,建立两个模板,一个是section_home.html,一个是section_index.html,前者是主题的默认模板,后者是我们的主题展示页模板。

然后,在页面建立主题展示页,文件名为/XXX/index.html,模板就用刚才的section_index.html。

然后是模板的内容。
section_home.html主题模板没什么好说的,值得注意的是在该模板可以直接调用主题的变量,因此不需要用getitems来获取主题名称了。

section_index.html主题展示页模板,重点就是下面这句:

  
  
  
  
  1. <ul><{getsqls template="<li><a href=()[a].html()>[s]</a></li>" sql="SELECT alias as a,section as s FROM [tablepre]_sections WHERE id != 1"}> 
  2. </ul> 

用SQL直接取数据库中的内容,因为主题有个默认的default,其id为1,不可删除,因此在select的时候设置id!=1.

你可能感兴趣的:(教程,主题,akcms)