Wordpress Form操作不适用于AMP

时间:2019-02-08 13:41:15

标签: wordpress amp-html

我正在尝试将AMP与wordpress中的表单操作一起使用。我在POST方法中使用action-xhr。

我提交表单时出现错误

  • 响应必须包含AMP-Access-Control-Allow-Source-Origin标头
  • 表单提交失败:错误:响应必须包含AMP-Access-Control-Allow-Source-Origin标头

甚至尝试添加标题,如下所示

header("AMP-Access-Control-Allow-Source-Origin: https://www.demo.com");

问题仍然存在。有什么建议吗?

我正在使用wordpress版本5.0.3

2 个答案:

答案 0 :(得分:2)

您可以使用router.get("/", (req, res, next)=>{ axios.get("http://ddragon.leagueoflegends.com/cdn/6.24.1/data/en_US/champion.json") .then( (response)=>{ res.render("champions", { champs: Object.values(response.data) }); }) .catch((err)=>{ console.log(err); }); }); 文件设置标题。

.htaccess

或者为您提供一个简单的示例;

Header set Access-Control-Allow-Origin 'https://cdn.ampproject.org​'
Header set AMP-Access-Control-Allow-Source-Origin 'https://your-domain.com'

更多信息:https://medium.com/@surajair/creating-comment-form-on-amp-pages-in-wordpress-9dd675ba383b

答案 1 :(得分:0)

如果将官方AMP plugin用于WordPress,这些标头将通过AMP_HTTP::send_cors_headers()方法自动发送。

有关插件行为的更多信息,请参见Handling Form Submissions剧本。