哆麦CMS留言表单如何支持Ajax请求
传统的表单提交方式一般是从一个页面提交到另外一个页面,页面返回html代码,这种提交方式简单高效,但页面之间的跳转造成用户体验较差,对于营销型网站来说,这种提交方式也造成一些营销监控代码管理困难(哆麦CMS也支持在留言结果页面通过API添加监控代码)。
留言通过ajax方式提交,可以在页面不刷新的条件下提交用户填写的数据,具有更好的用户体验。哆麦CMS后台用最简单的方式支持ajax留言提交,只需要在用户提交的数据中加入format=json,GET或POST方式都支持,最简单的办法的是在把表单提交的地址更改为“<?php dminfo('feedback_url');?>?format=json”。
返回数据
ajax提交方式返回的数据为json格式,包含两个参数error_code和error_message, error_code代表错误代码,error_message代表错误信息,error_code为200时,代表留言提交成功。
其他参数
留言的语言提示默认为后台设置的语言,也支持前台指定,参数为lang,暂时支持五种语言代码,zh-cn, en, es, fr, ar, ru。
Ajax跨站请求
跨站请求可以让多个网站的数据提交到一个网站上方便管理,通过系统API添加Access-Control-Allow-Origin标头,在主题的functions.php中加入一下函数即可:
function feedback_allow_origin($response){ header("Access-Control-Allow-Origin: ".$_SERVER['HTTP_ORIGIN']); echo json_encode($response); } add_action('flush_feedback_result', 'feedback_allow_origin');
评论列表