web-dev-qa-db-ja.com

プログラムでオーガニックグループを作成する

プログラムでどのようにOGグループを作成しますか?私は node_save() を試しましたが、喜びはありませんでした。

5
Lucy

ノードをグループポストとしてアタッチするよりも簡単です。

  <?php
  global $user;
  $node = new stdClass();
  $node->type = 'group'; // Change this to group node type name.
  $node->uid = $user->uid;
  $node->title = t('Title'); // Change title generation
  $node->body = t('Body'); // Change body generation
  $node->og_description = t('Group description'); // Change group description generation
  $node->og_selective = OG_CLOSED;
  $node->og_register = OG_REGISTRATION_NEVER;
  $node->og_directory = OG_DIRECTORY_CHOOSE_FALSE;
  $node->og_private = 0;
  node_save($node);
  og_insert_group($node);
  og_save_subscription($node->nid, $node->uid, array('is_active' => 1, 'is_admin' => 1));

(もちろん、3つの関数すべてからの戻り値も確認する必要があります)

5
Nikit

質問は本当にわかりませんが、 Mass Create モジュールを使用して多くのグループを作成しました。

1
Reg Gordon

私も同じように苦労していましたが、プログラムで新しいOGグループを作成するには、Rulesモジュールが重要であることに気づきました。

適切なトリガーと条件を探す場合、最初のアクションは「エンティティ>新しいエンティティの作成> OGグループ」です。

必要に応じて、ルールスケジューラを使用してタイミングを計ることができます。

1
Nicodv