kboard 프로필 연결하는방법

안녕하세요

kboard 에서 작성자 이름을 클릭하면 ultimate memeber 프로필로 연결되게 할수 있게 하려고합니다. (댓글도 동일하게)

먼저 다른분이 문의 했던 글이 있어 https://www.cosmosfarm.com/threads/document/8509?answer_sort=uid&answer_order=asc#tabs-horizontal

여기에 나와있는데로  두가지 수정을 적용시킬려고하는데요 첫번째 list.php 와 ducument.php 에 <?php echo $content->member_display?>코드를 찾을수없고;;

스킨의 list.php 또는 document.php 파일에서

<?php echo $content->member_display?> 이 부분을 찾아서 아래처럼 바꿔주세요.

<a href="<?php um_fetch_user($content->uid); echo um_user_profile_url(); um_reset_user();?>"><?php echo $content->member_display?></a>

2번째 수정 내용인 list.template.php 가 존재하지 않습니다. 

댓글 스킨의 list-template.php 파일을 수정해주세요.

게시판 쪽과는 살짝 다릅니다.

<?php echo $comment->user_display?> 이 부분을 찾아서 아래처럼 바꿔주세요.

<a href="<?php um_fetch_user($comment->user_uid); echo um_user_profile_url(); um_reset_user();?>"><?php echo $comment->user_display?></a>

사용중인 스킨은 에스크원 상담스킨이며 kboard 게시판과,댓글은 최신버전입니다.

 

 

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요
좋은 정보와 인맥을 동시에, 워드프레스 사용자 단톡방 참여하기
  • 안녕하세요~^^

    최신 버전의 KBoard 플러그인과 에스크원 스킨을 사용 중이시라면

    스킨 파일을 수정하지 않고 테마 쪽에 kboard_user_display 필터를 사용해서

    KBoard 플러그인의 작성자를 수정하실 수 있습니다.

     

    KBoard 플러그인의 작성자 클릭 시 Ultimate Member 프로필 페이지로 연결되게 하시려면

    워드프레스 관리자 -> 외모 -> 테마 편집기에서 functions.php 파일 하단에

    아래의 코드를 추가해보시겠어요?

    add_filter('kboard_user_display', 'my_kboard_user_display', 10, 5);
    function my_kboard_user_display($user_display, $user_id, $user_name, $plugins, $boardBuilder){
    	if($boardBuilder->board->id == '1'){
    		um_fetch_user($user_id);
    		$user_display = '<a href="'. um_user_profile_url().'">'.$user_name.'</a>';
    		um_reset_user();
    	}
    	
    	return $user_display;
    }

    위의 코드에서 $boardBuilder->board->id == '1' 부분은 실제 게시판 id로 적용해보세요.

     

    만약, kboard_user_display 필터가 제대로 동작하지 않는다면

    KBoard 에스크원 상담 스킨을 최신 버전으로 업데이트해보시겠어요?

    스킨 업데이트는 워드프레스 관리자 -> 스토어 페이지에서 할 수 있습니다.

    고맙습니다.

  • 제가 제대로 설명을  못드린거 같습니다. 죄송합니다;; 제가 하고자 했던 것은, ULTIMATE MEMBER 를 이용해서 NAME 메타필드를 불러와 게시글, 및 댓글을 작성자로 표시되게 해놨는데(쓰레드봇님 도움으로)

    게시글이나 댓글에있는 작성자 이름을 마우스로 클릭할경우 해당 작성자 프로필을 볼수있게 넘어가는 것을 문의드린것이였습니다.

    혹시 이부분도 도움주실수있을까요....? 

    고맙습니다.

     

  • 이전 댓글에 안내해드린 코드 중 아래의 코드를

    $user_display = '<a href="'. um_user_profile_url().'">'.$user_name.'</a>';

    아래의 코드로 교체해서 확인해보시겠어요?

    $user_display = '<a href="'. um_user_profile_url().'">'.get_user_meta($user_id, 'name', true).'</a>';

    고맙습니다.

  • 알려주신코드로 적용해봤더니 잘됩니다. 근데 먼저 알려주신 코드랑 충돌이 일어나는지 같이 업데이트 하면 페이지에 오류가나서 접근이안됩니다. 나중에 알려주신 코드만 올려서 쓰자니;

    작성자가 멤버 user id로 표시되서요;

    (말씀해 주신경로 워드프레스 관리자 -> 외모 -> 사용자 정의하기 -> CSS 입력 필드에 올릴려고하니까 올릴수없는코드라고 에러메세지나와서 

    전에 알려주신 테마 functions.php 에올려서 테스트했는데 상관없는건가요?;;;;;;;) 

    고맙습니다...

    //이번에 알려주신코드 작성자 이름 클릭하면 멤버쉽 정보로 넘어가기

    
    add_filter('kboard_user_display', 'my_kboard_user_display', 10, 5);
    function my_kboard_user_display($user_display, $user_id, $user_name, $plugins, $boardBuilder){
    	if($boardBuilder->board->id == '3'){
    		um_fetch_user($user_id);
    		$user_display = '<a href="'. um_user_profile_url().'">'.get_user_meta($user_id, 'name', true).'</a>';
    		um_reset_user();
    	}
    	
    	return $user_display;
    }
    

    //전에 알려주신 코드 uiltimate member user id 대신에 name 메타를 작성자로 표시하기

    add_filter('kboard_user_display', 'my_kboard_user_display', 10, 5);
    function my_kboard_user_display($display, $user_id, $username, $plugin, $builder){
    	$display = get_user_meta($user_id, 'name', true);
    	return $display;
    }

     

  • 올리는 과정에서 착오가 있었습니다.

    이전에 안내해드린 댓글에서 수정 위치를 수정해두었습니다.

     

    최근 알려드린 코드에 전에 안내해드린 코드가 이미 적용되어 있습니다.

    아래의 코드가 user_meta name을 표시하는 코드입니다.

    get_user_meta($user_id, 'name', true)

    고맙습니다.

  • 잘 적용되었습니다. 고맙습니다.

워드프레스 에러 기술지원 서비스 전문가에게 맡기세요