테스트 사이트 - 개발 중인 베타 버전입니다

wr_10 여분변수의 값에 따라서 특정 글로 이동하게 하려고 합니다.

wr_10의 여분변수에 저장한 값에 따라서 특정 글로 이동하게 하려고 합니다.

 

그런데 테마를 쓰고 있는데 테마마다 wr_10를 확인해서 이동하게 하지않고,

 

그누보드 자체에 있는 곳에서 이를 행하려고 했는데 잘 안되네요.

 

일단 생각했던 것은 훅을 이용해서

 

add_event('common_header', function ($write) {

echo $write['wr_10'];

});

 

를 해봤는데 아무것도 출력이 되지 않습니다. ( 값은 있습니다. )

 

목적을 달성하기 위해서 어떻게 해야 할까요? (꼭 훅이 아니어도, 테마 별로 다 손대지 않고 한번에

 

해결할 수 있는 방법 있으면 조언 좀 주십시요) 

 

감사합니다.

댓글을 작성하려면 로그인이 필요합니다.

답변 2개

extend/your_filename.extend.php

</p>

<p>function hook_common_header_view() {

    global $g5;</p>

<p> </p>

<p>    $bo_table = isset($_GET['bo_table']) == true ? $_GET['bo_table'] : null;

    $wr_id    = isset($_GET['wr_id']) == true    ? $_GET['wr_id']    : null;

    $w        = isset($_GET['w']) == true        ? $_GET['w']        : null;</p>

<p> </p>

<p>    $wr_id_ext_field = 'wr_10';</p>

<p> </p>

<p>    $view = null;

    if ($w == null && $bo_table != null && is_numeric($wr_id) == true) {

        $write_table = $g5['write_prefix'] . $bo_table;

        $view = get_write($write_table, $wr_id);

    }</p>

<p> </p>

<p>    if (isset($view['wr_id']) == true && $view['wr_id'] == $wr_id && is_numeric($view[$wr_id_ext_field]) == true) {

        $uri = get_pretty_url($bo_table, $view[$wr_id_ext_field]);

        $uri = htmlspecialchars_decode($uri);

        header('Location: ' . $uri);

        exit();

    }

}

add_event('common_header', 'hook_common_header_view', G5_HOOK_DEFAULT_PRIORITY, 0);</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 1개

답변 감사합니다. 그런데, 해보는데 안되서 이리저리 알아보니, 제가 마침 wr_id를 주소창에서 안쓰고, shorten url을 적용해서 사용하고 있습니다. 그래서 여전히 $view 변수에 아무 값도 안들어가서 이 코드 역시 값을 못불러오고 있어 다른 방법이 필요할 거 같습니다 ㅠㅠ

댓글을 작성하려면 로그인이 필요합니다.

* /tail.php 3라인에 추가

</p>

<p>if ($view['wr_10']) </p>

<p>  goto_url('<a href="https://sir.kr/'" target="_blank" rel="noopener noreferrer">https://sir.kr/'</a> . '?abc=' . $view['wr_10']);</p>

<p>

로그인 후 평가할 수 있습니다

답변에 대한 댓글 3개

제가 테마를 쓰고 있어서요. 테마를 바꾸기도 하는데 이러면 테마마다 다 기억하고 이걸 넣어줘야 해서, 그냥 그누보드 자체 코드 쪽에서 한번만 처리하려고 시도중입니다. 혹이라도 테마 중에 잊고 처리 안하는 것을 방지하기도 하구요. 그래서 훅으로 처리해보려고 한건데 훅에서 변수 사용이 안되는건지 잘 안되네요
/theme/basic/tail.php 가 아닌 /tail.php 파일이고 모든 테마 공통입니다.
테마를 변경해도 적용됩니다.
아.. 이런. 제가 미개한 짓을 했습니다. 해당 파일을 열어보고, 회사소개.. 등등의 문구가 있길래 아닌가보다 했는데 답글을 달아주신 내용을 보고 다시 확인해봤더니 그래서 3라인 에 추가를 하라고 하셨던 거였네요. 감사합니다!

아래 훅으로 하는 방법도 추가적으로 아시는 분 계시면 좀 더 알려주세요~! url은 short url을 사용하고 있어서 $_GET으로 파라매터로 wr_id를 가져오지는 못하고 있습니다~!

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인

전체 질문 목록

🐛 버그신고