每当评论任何问题时,最后评论的用户名不会在问题中更新

Whenever comment on any issue, last comment username not update in issues

无论何时评论任何一个问题,评论保存成功。

评论保存代码如下:

$user = elgg_get_logged_in_user_entity();
$p_url = parse_url($_SERVER['HTTP_REFERER']);

if($p_url['path'] == '/issues/view' || $p_url['path'] == '/issues/respond')
    $tracker_comment = TRUE;
else
    $tracker_comment = FALSE;

if($tracker_comment)
{
    action_gatekeeper();

    // Get input
    $entity_guid = (int) get_input('entity_guid');

    $comment_text = get_input('generic_comment');

    // Let's see if we can get an entity with the specified GUID
    if ($entity = get_entity($entity_guid)) {

        $comment = new ElggComment();
        $comment->description = $comment_text;
        $comment->owner_guid = $user->getGUID();
        $comment->container_guid = $entity->getGUID();
        $comment->access_id = $entity->access_id;
        $guid = $comment->save();

        // If posting the comment was successful, say so
        if ($guid) {
            system_message(elgg_echo("generic_comment:posted"));

        } else {
            register_error(elgg_echo("generic_comment:failure"));
        }

    } else {

        register_error(elgg_echo("generic_comment:notfound"));

    }

    // Forward to the
    forward($entity->getURL());
}

else

    RETURN TRUE;

我无法检索未在问题列表中更新的最后评论用户名。我正在使用 elgg_get_annotation() 检索最后的评论详细信息。
但不检索详细信息。给定波纹管中的最后评论代码。

if ($table_rows) {
foreach ( $table_rows as $entity ) {

    if ($entity->unread == 1) {
        $unread = "Yes";
    } else {
        $unread = "No";
    }

    if ($entity->assigned_to == 0) {
        $assigned = "No";
    } else {
        $assigned = "Yes";
    }

    $last_options = array ();

    $comments = elgg_get_annotations(array(
            'annotation_names' => 'issue_tracker_changes',
            'guid' =>  $entity->guid,
            'limit' => 1,
            'order_by' => 'n_table.id DESC',

    ));

    foreach ( $comments as $comment ) {
        $last_comment = get_entity ( $comment->owner_guid );
    }

自 Elgg 1.9 以来,评论不再是注释,而是实体。您正在使用代表实体的 ElggComment class 创建评论,因此您使用的是 Elgg 1.9 或更新版本。您只需要使用 elgg_get_entities 而不是 elgg_get_annotations。使用类型 object 和子类型 comment.