메뉴 건너뛰기

유용한 팁

휘즈 2018.09.20 10:27
조회 수 : 1025

xe는 댓글의 배치가 대댓글인 경우 어느 댓글에 대한 대댓글인지 알 수 없게 배치가 된다.

이를 해결 하기위해 댓글과 대댓글의 방향을 다르게 하는 등 어려 가지 방법을 사용해 보았으나 사용자에게 댓글 배치에 대한 설명이 필요하는 등 좋은 UX를 확보하기가 어려웠다.

그래서 결국 화면에 표시되는 컨텐츠가 늘어 나지만 댓글 번호를 활용하기로 했다.

  • 댓글 번호는 comment_srl을 사용한다. : {$comment->comment_srl}
  • 게시글에 대한 댓글은 댓글 번호만 출력한다.
  • 대댓글은 parent_srl을 구하여 어떤 댓글에 대한 대댓글인지 표시한다. : $comment->parent_srl
  • parent_srl의 닉네임을 구한다. : 
    {@
    $oComment = &getModel('comment');
    $comment_parent = $oComment->getComment($comment->parent_srl);
    }
    {$comment_parent->getNickName()}

완성된 코드는 다음과 같다.

<div class="author">

<a cond="!$comment->member_srl && $comment->homepage" href="{$comment->getHomepageUrl()}">{$comment->getNickName()}</a>

<strong cond="!$comment->member_srl && !$comment->homepage">{$comment->getNickName()}</strong>

<a cond="$comment->member_srl" href="#popup_menu_area" class="member_{$comment->member_srl}" onclick="return false">{$comment->getNickName()}</a>

<span class="time">{getTimeGap($comment->get('regdate'))}</span>

<span class="has-text-info"> ({$comment->comment_srl})</span>

<!--@if($comment->parent_srl !== 0)-->

{@

$oComment = &getModel('comment');

$comment_parent = $oComment->getComment($comment->parent_srl);

}

<p class="who-comment has-text-info">{$comment_parent->getNickName()}({$comment->parent_srl}) 에 대한 댓글</p>

<!--@end-->

</div>

comment_srl이 백만,천만단위가 되면 너무 길어지므로 끝에서 2~3자리만 표시하도록 한다.

 

아래와 같이 출력된다.

 

comment_no.png