Respostas:
O relacionamento entre o conteúdo do grupo e um grupo é por meio de uma relação de associação. Como é possível que o conteúdo do grupo seja membro de vários grupos, o código a seguir recuperará a lista de grupos:
$groups = og_get_entity_groups('node', $node);
Essa é uma matriz multidimensional com o grupo entity_types como chave e associações como valor. Cada associação é uma matriz com o ID da associação como chave e, em seguida, a ID da entidade do grupo como valor. Então, para ir de um nó de conteúdo de grupo, para todos os pais do grupo, você usaria ...
foreach (og_get_entity_groups('node', $node) as $entity_type => $og_memberships) {
foreach ($og_memberships as $membership_id => $entity_id) {
if ($entity_type == 'node') {
// Assuming we only want to deal with node groups, we can
// access the group node with...
$group_node = node_load($entity_id);
}
}
}
Eu precisava disso ontem à noite. Fez assim:
$node = node_load($nid);
$og_id = current($node->og_groups)
$ og_groups contém uma matriz de todos os OG dos quais uma postagem é membro. Você poderia pegá-los todos com um foreach. A chave para acessá-los é o nid.
$og_groups=array(5=>5, 15=>15);
Espero que ajude.
O og(organic groups)
módulo adiciona entity refrence
campo aos tipos de conteúdo que você deseja que seja group
ou que seja group content
. por padrão, o nome do campo é, og_group_ref
mas talvez ele mude para outro nome. Se você deseja descobrir exatamente o nome do campo, consulte o campo de gerenciamento do tipo de conteúdo (suponha que seja o tipo de conteúdo do artigo considerado) admin/structure/types/manage/article/fields
.
Escolha o campo do grupo NOME DA MÁQUINA (algo assim og_group_ref
).
Você pode algo como isto:
$node=node_load($nid);
$ogId=$node->og_group_ref['und'][0]['target_id'];
Descubra o gid e tente imprimir o objeto $ node inteiro, algo como:
print_r ($ node);
Por algum motivo, as respostas do Drupal não exibirão nada nas tags php, mas você deve colocar o php no pré para tornar a saída mais legível.
Tente ctrl + F e encontre onde o número é gerado. Você pode seguir o formato das matrizes / objetos para imprimi-lo quando $ node estiver disponível.