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

'브라우저 상태바(title)'에, 게시판별 각각의 모든 글에 'SEO 최적화 제목' 붙이기

· 8개월 전 · 670
SEO최적화제목.png

'브라우저 상태바(title)'

게시판별 각각의 글에 대한 '홈페이지 제목'이 아닌 'SEO 최적화 제목' 사용하기.

https://trigger.glitter.kr/bbs/board.php?bo_table=notice&wr_id=2

 

그누보드(기본 4개)의 모든 게시글에는 'wr_seo_title' 칼럼이 자동 삽입되어 있습니다.

 

아래의 후킹 함수를 /extend/에 추가하시면,
특정 게시판의 각각의 게시물 '브라우저 상태바(title)'에 홈페이지 제목이 아닌

미리 지정된 'wr_seo_title' 값을 적용하실 수 있습니다.
이 방식은 게시판별 일관된 제목과 각각의 글 제목을 유지하면서도,

별도로 설정한 'wr_seo_title' 값을 '브라우저 상태바(title)'에 표기할 수 있습니다.

/extend/bo_seo_title.extend.php = = =[code]

<?php

if (!defined('_GNUBOARD_')) exit; // 보안 처리

 

// 게시판 및 게시글 ID 확인

if (isset($_GET['bo_table']) && isset($_GET['wr_id'])) {

    $bo_table = preg_replace('/[^a-zA-Z0-9_]/', '', $_GET['bo_table']); // 보안 처리

    $wr_id = intval($_GET['wr_id']); // wr_id는 정수형

 

    // 해당 게시물의 wr_seo_title 조회

    $sql = "SELECT wr_subject, wr_seo_title FROM g5_write_{$bo_table} WHERE wr_id = '{$wr_id}'";

    $result = sql_fetch($sql);

 

    //  cf_title 값을 wr_seo_title로 변경하여 후킹 적용

    if (!empty($result['wr_seo_title'])) {

        $config['cf_title'] = trim($result['wr_seo_title']); // wr_seo_title 값 적용

    } else {

        $config['cf_title'] = trim($result['wr_subject']); // wr_seo_title이 없으면 wr_subject 사용

    }

}

 

// 후킹 시스템을 사용하여 g5['title']을 재설정

add_event('head.sub.php', function() {

    global $g5, $config;

 

    if (!isset($g5['title'])) {

        $g5['title'] = $config['cf_title'];

    } else {

        // 상태바에 표시될 제목 설정

        $g5['title'] = implode(' | ', array_filter(array($g5['title'], $config['cf_title'])));

    }

 

    // XSS 방지를 위한 strip_tags 처리

    $g5['title'] = strip_tags($g5['title']);

});

?>

[/code]

댓글 작성

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

로그인하기

게시판 목록

그누보드5 팁자료실

글쓰기
🐛 버그신고