WordPress模板插件定制

您现在的位置是:首页 > WordPress教程WordPress教程

WordPressAPI集成教程

查看 WP集市 的更多文章WP集市 2025-08-21 【WordPress教程】 1426人已围观

其实好多人用WordPress都停留在“装插件、改主题”的阶段,遇到数据对接就抓瞎——比如想把文章同步到小程序,或者自建个前端页面展示内容,总觉得“这玩意儿得找开发吧?” 真不用!WordPress自带的REST API就能搞定,说白了就是给你开了个“数据接口”,不用登录后台也能调文章、评论这些数据,今天咱就唠唠怎么从0到1把它用起来,保证你看完就会(不会你来打我)。

第一步:先确认API“门”开了没

WordPress从4.7版本开始就自带REST API了,不用装额外插件(除非你用的老版本,那赶紧升级吧,安全第一)。怎么确认?打开浏览器,输你网站域名+/wp-json,比如https://你的网站.com/wp-json,能看到一堆JSON数据,说明门开了,没开的话…那可能是主题或插件把它关了,去后台“设置-固定链接”随便换个格式保存下,一般就好了(别问为啥,WordPress的小脾气就这样)。

第二步:认证!没钥匙可进不去

API不是谁都能调的,尤其涉及“创建/删除文章”这种操作,得带“钥匙”(认证信息)。常见的有两种:

基础认证:简单但不安全,就像拿家门钥匙挂门口——直接用账号密码拼在请求里,比如https://用户名:密码@你的网站.com/wp-json/wp/v2/posts。测试玩玩行,正式用绝对别!之前有个客户这么干,服务器被人扫了,数据差点没了(血的教训!)。

JWT认证:推荐用这个,相当于给钥匙加了密码。先装个插件“JWT Authentication for WP REST API”,然后去wp-config.php里加两行代码(记得替换成自己的密钥,别用默认的!):

define('JWT_AUTH_SECRET_KEY', '随便写个复杂的字符串,比如@#$%^&*()_+');
define('JWT_AUTH_CORS_ENABLE', true); // 解决跨域问题,不然前端调不通

然后调接口POST https://你的网站.com/wp-json/jwt-auth/v1/token,传参数{"username":"你的用户名","password":"你的密码"},返回的token就是钥匙,后面调接口带上它就行(别把token存前端localStorage,被人扒了就完了,放后端调!)。

第三步:调接口!拿数据、发文章全靠它

最常用的接口就几个,记不住没关系,用的时候查/wp-json/wp/v2就行(里面有所有接口说明)。举俩例子:

1. 获取最新5篇文章
GET请求,不用认证(读数据一般公开):

fetch('https://你的网站.com/wp-json/wp/v2/posts?per_page=5')
  .then(res => res.json())
  .then(data => {
    data.forEach(post => {
      console.log('标题:', post.title.rendered); // 文章标题
      console.log('内容:', post.content.rendered); // 文章内容
    });
  });

拿到数据就能往你自己的页面里塞了,比用WordPress主题改样式灵活100倍!

2. 创建文章
POST请求,得带JWT的token(刚才拿到的钥匙),参数传标题、内容、状态:

fetch('https://你的网站.com/wp-json/wp/v2/posts', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'Authorization': 'Bearer 你的JWT token' // 记得加Bearer空格
  },
  body: JSON.stringify({
    title: '用API发的文章',
    content: '不用登录后台也能发,爽!',
    status: 'publish' // publish是直接发布,draft是草稿
  })
});

成功的话会返回新文章的ID,去后台“文章”里看,真的有!(别乱发测试文章啊,发了记得删)

最后说两句大实话

这玩意儿其实不难,就是刚开始摸不着头脑,多试两次就顺了。记住几个坑:

  • 调接口前先看返回格式,title.rendered才是显示的标题,直接用title会拿到带HTML的字符串(别问我怎么知道的,之前被这个坑了半小时);
  • 别用admin账号的token!建个编辑权限的子账号,出事了损失小点;
  • 跨域问题!前端调API可能报“Access-Control-Allow-Origin”错误,装个“WP CORS”插件,或者在.htaccess里加Header set Access-Control-Allow-Origin "*"(*号改成你前端域名,更安全)。

总之啊,WordPress API就像个宝藏,插件解决不了的需求,自己写几行代码调接口就行。下次再有人问“我想把WordPress数据同步到XXX”,直接甩这篇教程给他——自己动手,丰衣足食,还不用看插件作者的脸色,多香!(快去试试,试完回来点赞啊~)

Tags:

WordPress模板插件定制