はい、可能です。WordPressからDiscourseへのAPIリクエストは、discourse_requestユーティリティメソッドを使用して行うことができます。たとえば、次のようになります。
use WPDiscourse\\Utilities\\Utilities as DiscourseUtilities;
$args = array(
"body" => "",
"type" => "post"
);
$response = DiscourseUtilities::discourse_request( $path, $args );
これにより、リクエストが正しくフォーマットされ、WP Discourseの設定で提供されたAPIキーとユーザーが使用されます。参照しているアクションには、グローバルキーが必要になります(通常のWP Discourse機能にも同じキーを使用している場合)。
グループの作成
必要なエンドポイントは次のとおりです: Discourse API Docs discourse/app/controllers/admin/groups_controller.rb at main · discourse/discourse · GitHub
カテゴリの作成
必要なエンドポイントは次のとおりです: Discourse API Docs discourse/app/controllers/categories_controller.rb at main · discourse/discourse · GitHub
「セキュリティ設定」はpermissionsパラメータを介して処理されることに注意してください。グループ名をキー、権限レベルの整数を値とするオブジェクトを指定するだけです。たとえば、次のようになります。
{
"cohort1": 2,
"staff": 1
}
権限レベルの整数のリストは次のとおりです: discourse/app/models/category_group.rb at main · discourse/discourse · GitHub