2017-10-31 24 views
0

내 마지막 질문을 수정 한 후 elgg 플러그인 완료 문제가 발생했습니다. Apperently 내가 잘못 사용하고 또는 ElggElgg와 Relationship_created_time_lower의 활용

에 아래의 코드와

낮은 만든 시간의 사용을 오해하고 위 기능 :이 기능을 사용

$monthSpan = (30 * 24 * 60 * 60); 
$startTime = time() - $monthSpan; 

$MemberDifference = elgg_get_entities_from_relationship(array(
    'relationship' => 'member', //get Members 
    'relationship_guid' => $group->guid, //get individual guid for use 
    'inverse_relationship' => true, 
    'type' => 'user', //users are returned 
    'limit' => 20, 
    'joins' => array("JOIN {$db_prefix}users_entity u ON e.guid=u.guid"), 
    'order_by' => 'u.name ASC', 
    'relationship_created_time_lower' => $startTime, //the furthest back it will reach 
    'relationship_created_time_upper' => time(), //possibly unneeded, but ensures the closest date is today 
    'count' => true, 
)); 

을, 나는 모든 구성원을 얻기 위해가는 길에 그것을 구축 관련 그룹에서 이론적으로 지난 달 내에 해당 그룹에 등록한 모든 회원을 잡아야합니다. 불행하게도, 그들은 합류 한 시간에 관계없이 그룹의 모든 구성원을 계속해서 끌어 모으고 있습니다.

누군가 내가 잘못 갔다는 정보가 있습니까?

답변

0

내 버전의 Elgg가 너무 낮았습니다. 그렇지 않으면 전체 코드 블록이 작동합니다. Working Elgg 1.8을 사용하려면 다음 코드를 사용해야합니다.

 $MemberDifference = elgg_get_entities_from_relationship_count(array(
      'relationship' => 'member', 
      'relationship_guid' => $Reports->guid, 
      'inverse_relationship' => true, 
      'type' => 'user', 
      'limit' => 20, 
      'count' => true, 
      'joins' => array("JOIN {$db_prefix}users_entity u ON e.guid=u.guid"), 
      'order_by' => 'u.name ASC', 
      'wheres' => array('r.time_created >=' . $startTime) 
     )); 

이것은 완벽하게 작동하며 찾고자하는 내용을 정확히 나타냅니다.