WordPress通过OpenAI接口自动优化TAG标签描述内容

作者头像
首页 🌐建站技术 正文

image.png

准备工作

1.已经搭建好 WordPress 站点,无论是否上线网站,只需要能够连接“外网”,这样才能够正常的访问到 OpenAI 接口,因为国内已经屏蔽了 OpenAI 网站,包括 API 接口,如果没法访问“外网”,那么需要找一个 OpenAI API 的反向代理地址,或者自己利用国外服务器搭建一个反向代理的接口地址。

2.如果你已经搭建好自己的 OpenAI API 接口的代理,那么可以跳过这一步骤,或者可以通过以下代码自行搭建反向代理:

#PROXY-START/v1/ by https://www.aybk.cn/wordpress-tag-description-by-openai-api.html
location /{
    proxy_pass https://api.openai.com/;
    proxy_set_header Host $proxy_host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header REMOTE-HOST $remote_addr;
    proxy_set_header Upgrade $http_upgrade;
    proxy_set_header Connection $connection_upgrade;
    proxy_http_version 1.1;
    proxy_ssl_server_name on;
    proxy_ssl_name $proxy_host;
    add_header X-Cache $upstream_cache_status;
}
#PROXY-END/

以上为 Nginx 环境的反向代理规则,大家可以参考使用,如果你和阿影我一样也是使用的宝塔面板,可以直接通过宝塔面板创建站点,绑定和解析好域名,添加反向代理,但是需要注意是否和阿影我提供的反向代理规则有区别的地方,因为直接通过宝塔面板后台添加反向代理可能会失败。

3.剩下的就需要获取 OpenAI API Keys(https://platform.openai.com/account/api-keys),同样也需要外网才能访问,初次注册的账号一般会有 5 美元的体验额度可以使用,登录后创建自己的 Keys 就可以使用 OpenAI API 接口服务了

接入 OpenAI API

完成以上准备功能,就可以编辑你的 WordPress 当前主题的 functions.php 文件,将以下代码添加到合适的位置即可实现 OpenAI 自动生成 WordPress 标签描述内容,但是需要注意的是 OpenAI 生成内容需要时间,所以可能需要稍等片刻才能在标签中看到自动生成的描述内容,其次则是只会对新增的标签自动生成,不会影响已经存在的标签。

//WordPress 新增文章标签动作 by https://www.aybk.cn/wordpress-tag-description-by-openai-api.html
add_action('created_post_tag', 'fanly_basic_created_post_tag', 10, 3);
function fanly_basic_created_post_tag($term_id, $tt_id, $args) {
  wp_remote_post( admin_url( 'admin-ajax.php' ), [
    'blocking'  => false,
    'timeout'  => 1,
    'body'    =>[
      'action'  => 'fanly_basic_post_tag_description',
      'term_id'  => $term_id,
      'name'    => $args['name'] ?? null
    ]
  ]);
}
//WordPress 标签描述自动生成
add_action('wp_ajax_fanly_basic_post_tag_description', 'fanly_basic_post_tag_description');
add_action('wp_ajax_nopriv_fanly_basic_post_tag_description', 'fanly_basic_post_tag_description');
function fanly_basic_post_tag_description() {
  $term_id = $_POST['term_id'];
  $name = $_POST['name'];
  if($name){
    $prompt = $name . '是什么 回答至少 300 字,且必须是简体中文。';//标签名称+要求
    $token = 'sk-添加你自己的 key';//secret key
    $api = 'https://api.openai.com';//接口地址,或者是反向代理的镜像地址
    $res = wp_remote_post("$api/v1/chat/completions", [
      'headers' => ['Content-Type'=>'application/json','Authorization'=>"Bearer $token"],
      'timeout' => 300,
      'body' => json_encode([
        'model' => 'gpt-3.5-turbo',//gpt-3.5-turbo gpt-4
        'messages' => [[
          'role' => 'user',
          'content' => $prompt
        ]],
        'max_tokens' => 3000
      ])
    ]);
    if(!is_wp_error($res)){
      $body = json_decode($res['body'], true);
      $content = $body['choices'][0]['message']['content'] ?? null;
      $description = trim($content);
      if($description){
        wp_update_term($term_id, 'post_tag', ['description'=>$description]);
      }
    }
  }
}

以上代码只需要填写你自己的 key 即可使用。默认使用的是 OpenAI GPT3.5 接口,而 GPT4 接口还需要申请,晚些时候我也会给大家分享详细的 GPT4 权限的申请办法和教程。

至此就是阿影本次给大家分享的全部内容,如果大家还需要针对已经存在的 WordPress 标签自动生成描述内容,请在文章评论区留言,阿影我后期再给大家提供解决办法。当然大家也可以根据以上的代码做二次开发,做个所有标签的循环就可以实现了。

本站资源仅供学习交流使用请勿商业运营,严禁使用模板&源码从事违法,侵权等非法活动!如链接失效内容有误,请到评论反馈。

免费声明

  1. 本网站的文章内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长QQ:304906607进行删除处理。
  2. 文章采用: 《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)。
  3. 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
  4. 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
  5. 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
  6. 本站永久网址:https://www.aybk.cn
微信UI在线聊天源码 聊天系统PHP聊天源码分享
« 上一篇 11-03
怎么申请美国虚拟信用卡? 美国信用卡申请教程
下一篇 » 11-02

发表评论

请先登录后才能发表评论

没有更多评论了

个人信息

HI好朋友 ! 请登录
开通会员,享受下载全站资源特权。
百度一下

随便看看

大家都在看

2025年 乙巳年 蛇年
13 : 36 : 00
公历日期
9月26日
农历日期
八月初五
星期
星期五
下午好
金秋时节,愿您收获满满
距离国庆节还有5天
登陆
还没有账号?立即注册
点击按钮进行验证
忘记密码?
登陆
忘记密码
已经有账号?马上登陆
获取验证码
重新获取(60s)
点击按钮进行验证
重置密码
注册
已经有账号?马上登陆
获取验证码
重新获取(60s)
点击按钮进行验证
立即注册