1. 정확한 제품 또는 플러그인 이름
kboard 게시판과 회원가입관리 플러그인
2. 상세 내용
쪽지 기능을 사용하고 있는데요. 이전 다른 스레드에 있는 내용은 확인했습니다.
쪽지함에서 받은 쪽지함에서 삭제 하는 버튼을 보낸 쪽지함에서도 보여지게 해서 테스트를 해봤는데요.
커스텀 포스트 타입으로 보낸쪽지 = 받은쪽지 같은 데이터를 활용하고 있다는 것은 이해를 하였는데,
보낸 쪽지함에서 해당 쪽지 삭제를 시도하면 아무래도 삭제 권한은 받은 유저에게만 있는 것이여서 그런것인지 권한이 없다고 뜨는 것으로 확인했습니다. (관리자 계정이였지만요)
보낸 쪽지함에서 쪽지 삭제가 안되는 것은 어쩔수 없다고 한다면, 사용자 목록에서 삭제한 사용자에게 보낸 쪽지도 그대로 남아있는 것이라도 삭제가 가능하거나 필터링되어야할 것 같습니다.
혹여 이런 데이터가 엄청 많아진다면 db, data 누적 낭비가 될수도 있으니 삭제 되는게 가장 좋긴할거같구요.
a 보낸 쪽지함에서 쪽지 삭제가 가능하면 좋겠다.
몇년 전 질문 글에서 연구해보신다고 한 것은 봤는데 업데이트 된 소식이 있는지.
b. 쪽지를 보낸 유저가 사용자 목록에서 삭제된 유저가 된 경우 보낸 쪽지함에 쪽지가 남아있다.
유저 삭제때 모든 데이터도 삭제 체크가 되었을 때 쪽지 처리는 어떻게 하고 있는지.
삭제를 하거나, 필터를 하는 방법같은 가이드가 필요.
[보낸쪽지함] - 삭제된 유저 한테 보냈던 쪽지 표시된 캡쳐 화면
4. 수정한 코드 내역 (있다면)
/wp-content/plugins/cosmosfarm-members/skin/사용중인스킨/messages-list-item-default.php 수정한 코드.
- 보낸 쪽지함에서 보낸 사람 아바타, 닉네임 표시 하도록 적용.
- 보낸 쪽지함에서 삭제버튼 활성화 테스트 후 주석처리 상태.
<?php
$to_user = new WP_User($item->user_id);
?>
<li class="messages-list-item item-type-<?php echo $item->get_type()?> item-status-<?php echo $item->get_status()?> item-post-id-<?php echo $item->ID?>">
<?php if(isset($_GET['messages_view']) && $_GET['messages_view'] === 'sent'):?>
<div class="item-avatar"><?php echo get_avatar($item->user_id, 96)?></div>
<?php else:?>
<div class="item-avatar"><?php echo get_avatar($from_user_id, 96)?></div>
<?php endif?>
<div class="item-right-wrap">
<div class="cosmosfarm-members-item-wrap">
<?php if(isset($from_user->ID) && $from_user->ID):?>
<?php if(isset($_GET['messages_view']) && $_GET['messages_view'] === 'sent'):?>
<div class="add-item-middot item-display-name"><?php echo $to_user->display_name?></div>
<div class="add-item-middot item-date"><?php echo $item->post_date?></div>
<?php else:?>
<div class="add-item-middot item-display-name"><?php echo $from_user->display_name?></div>
<div class="add-item-middot item-date"><?php echo $item->post_date?></div>
<?php endif?>
<?php else:?>
<div class="item-date"><?php echo $item->post_date?></div>
<?php endif?>
</div>
<div class="cosmosfarm-members-item-wrap">
<?php if($item->post_title):?>
<div class="item-title"><?php echo $item->post_title?></div>
<?php endif?>
<div class="item-content"><?php echo wpautop($item->post_content)?></div>
</div>
<?php if($item->user_id == get_current_user_id()):?>
<div class="cosmosfarm-members-item-wrap">
<div class="add-item-middot item-button-toggle"><a href="#" onclick="return cosmosfarm_members_messages_toggle(this, '<?php echo $item->ID?>');"><span class="text-read">읽음 표시</span><span class="text-unread">안읽음 표시</span></a></div>
<div class="add-item-middot item-button-delete"><a href="<?php echo get_cosmosfarm_members_messages_url(array('to_user_id'=>$item->from_user_id, 'redirect_to'=>$_SERVER['REQUEST_URI']))?>" title="답장쓰기">답장쓰기</a></div>
<div class="add-item-middot item-button-delete"><a href="#" onclick="return cosmosfarm_members_messages_delete(this, '<?php echo $item->ID?>');">삭제</a></div>
</div>
<?php else:?>
<!-- <div class="cosmosfarm-members-item-wrap">
<div class="add-item-middot item-button-delete"><a href="#" onclick="return cosmosfarm_members_messages_delete(this, '<?php echo $item->ID?>');">삭제</a></div>
</div> -->
<?php endif?>
</div>
</li>