首页 > 后端开发 > Python教程 > 使用 WordPress API 的综合指南:身份验证和后期调度

使用 WordPress API 的综合指南:身份验证和后期调度

DDD
发布: 2024-10-07 20:10:03
原创
726 人浏览过

A Comprehensive Guide to Using the WordPress API: Authentication and Post Scheduling

在本指南中,我们将探索如何使用 WordPress API 进行身份验证并安排特定发布时间的帖子。这些步骤将帮助您以编程方式安全地管理您的 WordPress 内容。

使用 WordPress API 进行身份验证

要安全地与 WordPress API 交互,您需要对您的请求进行身份验证。让我们深入研究两种常见的方法:

应用程序密码

应用程序密码是 WordPress 中的一项内置功能,可让您生成用于 API 访问的安全密码,而不会泄露您的主帐户密码。

  1. 登录您的 WordPress 管理仪表板。
  2. 导航到用户→个人资料
  3. 向下滚动到“应用程序密码”部分。
  4. 输入应用程序的名称(例如“API 访问”)。
  5. 点击“添加新的应用程序密码”。
  6. 复制生成的密码(您将无法再次看到它)。

使用应用程序密码:


<p>import requests</p>

<p>url = "https://your-wordpress-site.com/wp-json/wp/v2/posts"<br>
username = "your_username"<br>
app_password = "your_application_password"</p>

<p>headers = {<br>
    "Content-Type": "application/json"<br>
}</p>

<p>response = requests.get(url, auth=(username, app_password), headers=headers)</p>

登录后复制




基本身份验证插件

对于较旧的 WordPress 版本或者如果您更喜欢替代方法:

  1. 从 WordPress.org GitHub 存储库下载基本身份验证插件。
  2. 在您的 WordPress 网站上安装并激活该插件。
  3. 使用您的常规 WordPress 用户名和密码进行身份验证。

<p>import requests</p>

<p>url = "https://your-wordpress-site.com/wp-json/wp/v2/posts"<br>
username = "your_username"<br>
password = "your_password"</p>

<p>headers = {<br>
    "Content-Type": "application/json"<br>
}</p>

<p>response = requests.get(url, auth=(username, password), headers=headers)</p>

登录后复制




在特定时间发布帖子

要安排帖子在特定时间发布,请在创建或更新帖子时使用日期参数。方法如下:

创建预定帖子


<p>import requests<br>
from datetime import datetime, timedelta</p>

<p>url = "https://your-wordpress-site.com/wp-json/wp/v2/posts"<br>
username = "your_username"<br>
app_password = "your_application_password"</p>

<p># Schedule the post for 2 days from now at 10:00 AM<br>
scheduled_time = datetime.now() + timedelta(days=2)<br>
scheduled_time = scheduled_time.replace(hour=10, minute=0, second=0, microsecond=0)<br>
scheduled_time_str = scheduled_time.isoformat()</p>

<p>data = {<br>
    "title": "Scheduled Post Example",<br>
    "content": "This is the content of the scheduled post.",<br>
    "status": "future",<br>
    "date": scheduled_time_str<br>
}</p>

<p>response = requests.post(url, auth=(username, app_password), json=data)</p>

<p>if response.status_code == 201:<br>
    print("Post scheduled successfully!")<br>
else:<br>
    print("Error scheduling post:", response.text)</p>

登录后复制




更新现有帖子的时间表

要重新安排现有帖子,您需要其帖子 ID:


<p>import requests<br>
from datetime import datetime, timedelta</p>

<p>post_id = 123  # Replace with the actual post ID<br>
url = f"https://your-wordpress-site.com/wp-json/wp/v2/posts/{post_id}"<br>
username = "your_username"<br>
app_password = "your_application_password"</p>

<p># Reschedule the post for 1 week from now at 2:00 PM<br>
new_scheduled_time = datetime.now() + timedelta(weeks=1)<br>
new_scheduled_time = new_scheduled_time.replace(hour=14, minute=0, second=0, microsecond=0)<br>
new_scheduled_time_str = new_scheduled_time.isoformat()</p>

<p>data = {<br>
    "status": "future",<br>
    "date": new_scheduled_time_str<br>
}</p>

<p>response = requests.post(url, auth=(username, app_password), json=data)</p>

<p>if response.status_code == 200:<br>
    print("Post rescheduled successfully!")<br>
else:<br>
    print("Error rescheduling post:", response.text)</p>

登录后复制




重要提示

  • 确保您的 WordPress 网站使用 HTTPS 进行安全通信。
  • 妥善保管您的应用程序密码或常规密码,切勿分享。
  • 日期参数应采用 ISO 8601 格式 (YYYY-MM-DDTHH:MM:SS)。
  • WordPress API 使用 UTC 时间,因此请相应地调整您的计划时间。
  • 将预定帖子的帖子状态设置为“未来”。
  • 您还可以使用 date_gmt 参数直接指定 GMT/UTC 时间。

通过遵循本指南,您应该能够使用 WordPress API 进行身份验证,并以编程方式安排特定发布时间的帖子。

引用:

  1. 身份验证 – REST API 手册 | Developer.WordPress.org
  2. WordPress REST API:如何访问、使用和保护它(完整教程)
  3. WordPress REST API 身份验证 – WordPress 插件 | WordPress.org
  4. WordPress API 基础知识初学者指南 - GetDevDone 博客
  5. 什么是 WP REST API 以及如何保护它 | WordPress Rest API
  6. WordPress REST API 身份验证 | WordPress 插件

以上是使用 WordPress API 的综合指南:身份验证和后期调度的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板