2

ユーザーをグループに入れる方法について、良いモジュールがあるかどうか疑問に思っています。

基本的には10人追加ごとに、番号が振られたグループに追加していただきたいです。また、各グループに 1 人のファシリテーターが割り当てられ、複数のグループに割り当てられる場合があります。また、自由にグループに人を追加/削除し、グループ間でメンバーを交換する必要があります。

助言がありますか?

4

1 に答える 1

1

「User Groups」という名前の語彙を作成します。admin/config/people/accounts/fields に移動し、ユーザーの分類用語フィールドを追加します。

<?php    
function mymodule_user_presave(&$edit, $account, $category) {

$termname = int($account->uid / 10);
if(!empty(taxonomy_get_term_by_name(termname)){
  $newterm = new stdClass();
  $newterm->name = $termname;
  $newterm->vid = 5; the vid of the vocabulary 'User group which you should create manually'
  taxonomy_term_save(($newterm); If the terms already exists, it will just remain the same.
  $edit['data']['field_user_group'] = $newterm->tid;
}
?>

したがって、10 の倍数の範囲内のすべてのユーザーに対して、単一の用語が割り当てられます。たとえば、uid が 0 から 9 のユーザーには用語名 0 が割り当てられ、10-19 には 1 というように割り当てられます。

すべてのユーザーは、管理インターフェイスからグループの名前でタグ付けされているだけなので. これらのタグごとに、ユーザーを割り当てることもできます。

注:コードは概念のためのものであり、正確でもテスト済みでもありません。

于 2012-11-23T22:54:22.640 に答える