글쓴이 사이드 뷰 메뉴 추가 팁입니다. > 그누보드5 팁자료실

그누보드5 팁자료실

글쓴이 사이드 뷰 메뉴 추가 팁입니다. 정보

글쓴이 사이드 뷰 메뉴 추가 팁입니다.

본문

좀 많이 복잡했는데, hook 기능이 있었네요.

글쓴이 사이드뷰에 메뉴 추가하고 싶으면 다음과 같이 작업하면 속 시원하게 추가할 수 있습니다.

 

extend 폴더에 sideview_add.php 파일 하나 만드시고, 음 파일명은 님들이 바꾸어도 상관없어요.

그리고, 다음 코드를 넣어주시면 됩니다.

 

<?php
if (!defined('_GNUBOARD_')) exit;

add_replace('member_sideview_items', function($items, $args){
    $mb_id = $args['mb_id'];
    $items['menus']['custom'] = '<a href="/realtime_memo.php?user='.$mb_id.'">실시간 쪽지</a>';
    return $items;
});

 

그럼 즐개발하세요.

 

** 추가 **

extend 폴더 안에 하게 되면 $mb_id 값을 가져올 수 없네요. view페이지야 어찌어찌 맞출수 있는데, list에서는 그냥 만드는게 나을 정도입니다. 즉, 폴더 위치가 extend일때 hook 사용 시 링크연결만 하시는게 나을 듯 합니다. 

전, mb_id가 필요함으로 common.lib.php 파일에서 수정했습니다.

추천
2

댓글 11개

도움되시라고 댓글 달아둡니다.

 

global $member; 호출 하시면 멤버 정보를 불러올 수 있습니다.

echo $member['mb_id'];

 

로 호출 가능합니다.

 감사합니다. 그런데 한가지 궁금한게 더 있는데, extend 폴더에서는 그 값을 가져 올 수 없던데요. 혹시 가능하다면 좀 더 상세히 알려주시면 감사하겠습니다. 

** 그누보드 써본지가 좀 오래되어서 지금 많이 생소하네요 **

@ii0000039210 

$mb_id = $args['mb_id'];

이부분이 바로 위에 글로벌로 선언해주면 되요...... 아래 코드로 변경하시면 동작할꺼에요 

global $member; 

$mb_id = $member['mb_id']; 

 

@미니님a 안되네요. ㅠㅠ 감사합니다. 혹시, 다른 일 하시다가 이에 관련된 정보가 있으면 언제든지 답글 달아주시면, 성실하게 배우겠습니다.

 

 

 

아 죄송합니다. 사이드뷰는 $member 가 현재 로그인 사용자 기준이여서 안되었던 것입니다.

 

아래 코드로 하니 정상적으로 잘 동작하네요

$data 를 파라미터로 받고 있으니 데이터를 출력 해야 합니다.

 

<?php if (!defined('_GNUBOARD_')) exit; // 개별 페이지 접근 불가

add_replace('member_sideview_items', 'member_sideview_item', G5_HOOK_DEFAULT_PRIORITY, 2);

if(!function_exists('member_sideview_item')){

function member_sideview_item($sideview, $data = []){

        $sideview['menus']['custom'] =  '<a href="/realtime_memo.php?user='.$data['mb_id'].'">실시간 쪽지</a>';

        return $sideview;

    }

}

 

아래 이미지 보는 것 처럼 잘 받아옵니다.

잘못된 정보로 오해하셨다면 사과 드리겠습니다.

8233f86ea6b224c0c5588c92c782e485_1762401785_6295.png

음 그렇군요. 그럼, iis 윈도우 서버에서는 안될수도 있을까요? 

전 동작하지 않네요. 특이하네요. 참고로, 윈도우 서버에 php5.6 입니다.

@ii0000039210 어...5버전은 잘 모르겠습니다 ..ㅠ

현재 8.4까지 나왔는데 업데이트 하시는 걸 추천드립니다!!

7.4 / 8.2 에서 정상 동작하는 코드이니, 코드상에는 문제 없을 것 같아요

@미니님a 미니님 원인을 찾았습니다. 미니님이 주신 소스는 아주 정상적으로 동작이 잘되는 소스입니다. 다만, 최신글에서는 아이디 값을 넘기지 못하는 것이였습니다. 정말, 감사합니다.

정리한 글이 하나 있어야 하지 않을까 싶어 남깁니다.

미니님이 알려주신 소스가 완벽한 소스입니다. 다른 도메인에서 테스트해보니 동작이 아주 잘되고 있습니다. 댓글에 있는 소스를 사용하시길 바랍니다. 

전체 2,742 |RSS
그누보드5 팁자료실 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1402호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT