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

여분의 필드(wr_xx) 내용을 적고,,,게시글마다 별도의 메타태그로 사용할 수 있을지? 채택완료

더블피디 9년 전 조회 3,935

 

그누보드 head에 메타태그를 넣으면

사이트 전체에 메타태그가 생성됩니다. 

 

각각의 게시글마다 내용이 다르기 때문에 이에 대한 헤시태그 처럼

여분의 필드에 넣으면 이 부분이 메타태그에 포함될 수 있도록 할 수 있는건지?

 

그누보드의 Q&A 태크라는 부분과 동일할듯합니다. 

 

 

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

답변 3개

채택된 답변
+20 포인트
그누위즈

예를 들어볼게요

lib/common.lib.php파일하단에 함수를 만들어줍니다.

</p><p>// 게시판 테이블 정보를 얻는다.</p><p>function get_board_meta($fields='*',$bo_table)</p><p>{</p><p>    global $g5;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span></p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$bo_table = 'g5_write_'.$bo_table;</p><p><span class="Apple-tab-span" style="white-space:pre">	</span>$row = sql_fetch(" select $fields from {$bo_table} ");</p><p>    return $row[$fields];</p><p>}</p><p>

 

이렇게 함수를 추가하시고

head.sub.php파일을 열어주시고

작당한 위치에

$test = get_board_meta('wr_1',$bo_table);

echo $test;

이렇게 한번 해보세요

그러면 wr_1필드의 값이 뿌려와질겁니다.

해당함수에 wr_2라고하면 wr_2필드의 값이 뿌려와지겠죠

값이 뿌려졌으면 메타태그로만들어서 적용만 시키시면 될듯하네요

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

답변에 대한 댓글 2개

더블피디
9년 전
상세히 설명해주셔서 감사드립니다.

한가지 죄송합니다...
함수에서 정보를 잘 못 불러오는거 같아서..


/lib/common.php 파일 맨 하단에 get_board_meta 함수추가

/theme/basic/head.sub.php

24라인쯤에 함수 호출하는 부분을 넣었구요

if (strstr($g5['lo_url'], '/'.G5_ADMIN_DIR.'/') || $is_admin == 'super') $g5['lo_url'] = '';

$test = get_board_meta('wr_1',$bo_table);

/*
// 만료된 페이지로 사용하시는 경우


echo %test; 출력을 하면 null상태라서요..(db 내용을 보니..wr_id에 따라 각각 다른값이라서..)
각각의 보드의 게시글마다 wr_id값이 있는데...이 부분을 $row로 설정한거 같은데요

함수 사용 시 $row 어떻게 사용하면 될까요?
보들이윤
9년 전
해당 소스는 참고하시라고 임의로 만들어본거구요
함수를 보시다시피
wr_1필드,$bo_table(게시판명) 이렇게 두개의 인자값을 함수로 넘겨주고있습니다.
받아주는 함수에서도 마찬가지로 2개를 받아주고있죠
function get_board_meta($fields='*',$bo_table)

여기에 해당글의 wr_id를 넘기고싶으시면 인자값에 추가하시면됩니다.
그리고 아래의 쿼리문을 알맞게 수정을 하셔야하겠지요

$test = get_board_meta('wr_1',$bo_table,$wr_id);
echo $test;

function get_board_meta($fields='*',$bo_table,$wr_id)
{
global $g5;

$bo_table = 'g5_write_'.$bo_table;
$row = sql_fetch(" select $fields from {$bo_table} where wr_id = {$wr_id} ");
return $row[$fields];
}

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

http://sir.kr/bbs/profile.php?mb_id=smmysong1" class="sv_member" title="보들이윤 자기소개" target="_blank" style="color: rgb(0, 0, 0); text-decoration: none; font-family: 돋움, Dotum, sans-serif; font-size: 12px;">보들이윤님 

 

아래 코드 부분은 스킨(view.skin.php)입니다.  게시글의 head부분은 스킨에서 처리하지 않는거 같구요

/bbs/view.php에서 처리해야 하는건지요? 

 

예시로 참고할 만한 코드가 있을까요?

 

번거롭겠지만, 부탁드립니다.

 

</p><p><?php</p><p>if (!defined("_GNUBOARD_")) exit; // 개별 페이지 접근 불가</p><p>include_once(G5_LIB_PATH.'/thumbnail.lib.php');</p><p> </p><p>// add_stylesheet('css 구문', 출력순서); 숫자가 작을 수록 먼저 출력됨</p><p>add_stylesheet('<link rel="stylesheet" href="'.$board_skin_url.'/style.css">', 0);</p><p>?></p><p> </p><p><script src="<?php echo G5_JS_URL; ?>/viewimageresize.js"></script></p><p> </p><p><!-- 게시물 읽기 시작 { --></p><p><div id="bo_v_table"><?php echo $board['bo_subject']; ?></div></p><p> </p><p><article id="bo_v" style="width:<?php echo $width; ?>"></p><p>    <header></p><p>        <h1 id="bo_v_title"></p><p>            <?php</p><p>            if ($category_name) echo $view['ca_name'].' | '; // 분류 출력 끝</p><p>            echo cut_str(get_text($view['wr_subject']), 70); // 글제목 출력</p><p>            ?></p><p>        </h1></p><p>    </header></p><p> </p><p>    <section id="bo_v_info"></p><p>        <h2>페이지 정보</h2></p><p>        작성자 <strong><?php echo $view['name'] ?><?php if ($is_ip_view) { echo " ($ip)"; } ?></strong></p><p>        <span class="sound_only">작성일</span><strong><?php echo date("y-m-d H:i", strtotime($view['wr_datetime'])) ?></strong></p><p>        조회<strong><?php echo number_format($view['wr_hit']) ?>회</strong></p><p>        댓글<strong><?php echo number_format($view['wr_comment']) ?>건</strong></p><p>    </section></p><p> </p><p>    <?php</p><p>    if ($view['file']['count']) {</p><p>        $cnt = 0;</p><p>        for ($i=0; $i<count($view['file']); $i++) {</p><p>            if (isset($view['file'][$i]['source']) && $view['file'][$i]['source'] && !$view['file'][$i]['view'])</p><p>                $cnt++;</p><p>        }</p><p>    }</p><p>     ?></p><p>...</p><p> </p><p>

 

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

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

그누위즈

메타태그면 head부분에 적용이 되어야하는데

게시판 필드에다가 넣으면

head아래 content부분에 메타태그가 출력이 되겠네요

head부분에

if($bo_table) //게시판이라면

이라는 조건을 주어서

head부분에서 쿼리를 돌려서 해당 wr_xxx의 값을 불러오면 될듯하네요

사용하는데에는 지장이없을것같습니다.

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

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

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

로그인