AKCMS动态接口

来自站长百科
跳转至: 导航、​ 搜索

导航: 返回上一页

AKCMS安装后,默认并不生成静态页,而是提供了几个前台接口显示网页

  • /akcms_item.php?id=123(显示ID为123的文章)
  • /akcms_category.php?id=1(显示ID为1的栏目)

接口程序被部署在后台文件高一层的目录中,即:如果管理后台的网址是http://www.your.com/akcms/,那文章接口的地址是http://www.your.com/akcms_item.php。

接口的文件名都以akcms_作为前缀前缀,这是为了防止安装AKCMS覆盖网站原有的同名文件。

akcms_item.php[ ]

ID参数的动态页面接口

本接口接受的参数:id,对应页面或者文章的ID

举例:akcms_item.php?id=123

  • 特别说明
接口虽然支持直接使用,但是通常建议通过另外一个php调用它,以akcms_item.php为例,它支持直接通过 akcms_item.php?id=123的方式调用,不过最好新增一个article.php文件,代码短只有三行:
<?php
include("akcms_item.php");
?>

从而实现了通过article.php?id=123的方式调用。这样做的好处是URL可以自行定义,比akcms_item.php这样的好看;用户不会知道使用的CMS是AKCMS,暴露出去的信息越少,系统越安全。

通过在调用前设置变量还可以指定模板:

<?php
//$template = 'test1.htm,test2.htm,test3.htm';
//如果上一句去掉注释,则动态显示页面,模板在test1.htm、test2.htm,test3.htm中随机,随机模板可以有效防止内容被采集
//$template = 'test1.htm';
//如果上一句去掉注释,则动态显示页面,模板固定使用test1.htm
//如果以上两句都注释掉,也就是说不设置$template变量,则用这篇文章默认的模板渲染,取决于这篇文章自身的设置以及所属栏目的设置
include("akcms_item.php");
?>

以下接口也都建议通过另外一个php调用,不再重复说明。

akcms_rounter.php[ ]

伪静态文件名的动态页面接口

本接口接受的参数:

filename,文件名

举例:akcms_rounter.php?filename=sports/jordan.htm,这个接口主要用于配合伪静态访问。

ApacheRewriteRule^([a-zA-Z0-9\-_\/]+\.htm)$ akcms_rounter.php?filename=$1 [L]

这样一来通过http://youdomain.com/sports/jordan.htm的访问会被定向到akcms_rounter.php?filename=sports/jordan.htm,看似是纯静态,实际上是动态页面。

==='akcms_captcha.php=== 验证码的图片接口 本接口接受的参数:

sid,Session ID,本接口的输出就是一副普通图片,<img src="/akcms_captcha.php?sid=12345">就可以显示一个验证码图片

举例:

<script>
ran = 'kfld5d';//sid可以通过JS方式随机获取
document.getElementById("captchaimage").src = "/akcms_captcha.php?sid=" + ran;
</script>

akcms_category.php[ ]

栏目页面的显示接口

本接口接受的参数:

id,栏目的ID
path,栏目的目录,path=sports/ball/football,则显示football这个栏目,前提是football这个栏目的上级目录依次sports和ball,支持无限

级栏目

alias,栏目的别名,alias=abc,则显示别名是abc的栏目,如果有多个栏目的别名都是abc的话,取ID最小的一个,因此如果您要使用这个参数的话需要自行保证栏目别名的唯一性
category,栏目名称,category=足球,则显示足球这个栏目,与alias参数一样,唯一性需自行保证page,页码ID,如果page未指定则显示栏目

首页模板,如果指定则显示栏目分页模板

akcms_section.php[ ]

主题页面的显示接口

id,主题的ID
alias,主题的别名,alias=abc,则显示别名是abc的主题,如果有多个主题的别名都是abc的话,取ID最小的一个,因此如果您要使用这个参数

的话需要自行保证主题别名的唯一性

section,主题名称,section=足球,则显示足球这个主题,与alias参数一样,唯一性需自行保证

akcms_comment.php[ ]

接受评论接口

本接口接受的参数:(POST方式)

captcha,用户输入的验证码(如果设置需要验证码则必提供)
sid,验证码对应的sid(如果设置需要验证码则必提供)
itemid,被评论文章的ID(必提供)
comment,评论内容(必提供)
username,评论者姓名
title,评论题目

本接口不成熟

akcms_page.php[ ]

显示模板接口

本接口接受的参数:

template,模板(支持多模板随机显示,用,间隔)

本接口用于显示一个模板而无需创建一个页面应用这个模板,从性能上说,不用从数据库获取页面的信息然后再渲染页面,减少2次数据库查询。

akcms_post.php 投递内容接口 本接口不成熟

akcms_score.php[ ]

评分接口

本接口不成熟

akcms_search.php[ ]

搜索接口

keywords,关键词
category,栏目id
page,页面ID