그누보드5 전용 구글사이트맵(SEO) 생성기 정보
그누보드5 전용 구글사이트맵(SEO) 생성기관련링크
http://www.hardcopyworld.com
1940회 연결
첨부파일
본문
워드프레스로 블로그 운영하다 분위기 좀 바꿔볼려고 그누보드5로 이래저래 삽질중인 유저입니다.
넘어와서 다른건 별 아쉬움이 없었는데 구글 sitemap 등록 기능을 찾기가 힘드네요.
자료를 구글링하다보니 예전에 그누보드4용으로 올라왔던 사이트맵 생성기 자료가 있어서(말러83 님) 급히 그누보드5 용으로 수정해 봤습니다.
그누보드4 용 원본글 : http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=19952&page=1&sca=&sfl=&stx=&spt=0&page=1&cwin=#c_33937
배포 페이지 : http://bomool.net/bbs/board.php?bo_table=bo0103&wr_id=51
웹 프로그래밍 쪽으로는 잘 몰라서 이리저리 삽질 좀 하면서 닥치는대로 수정한 코드라 하드코딩과 비효율적인 부분들이 눈에 띄실겁니다;;
그냥저냥 동작하는거 같으니 필요하신 분 수정해서 사용하세요.
# 설치방법
1. 다운로드 받은 m3googlesitemap.php 파일 7라인에 자신의 그누보드 설치 경로를 입력 (마지막 / 넣지 않음!)
2. 그누보드 설치 폴더에 m3googlesitemap.php 파일을 올려둔다.
3. 업로드 한 파일을 브라우저에서 열어서 XML 파일이 정상적으로 생성되어 보이는지 확인한다.
4. 구글 웹마스터 도구 페이지에 접속한다. https://www.google.com/webmasters/
5. 로그인(혹은 가입 후 로그인) -> 사이트 추가 -> 자신의 홈페이지를 절차에 따라 등록
6. 추가한 홈페이지를 선택 [웹 마스터 도구 -> 크롤링 -> Sitemaps] 선택
7. [Sitemap 추가/테스트] 선택 -> m3googlesitemap.php 경로 입력
예) http://www.aaa.com/g5/m3googlesitemap.php
8. [Sitemap 테스트] 클릭! --> 만약 오류가 있다면 리포트 됨. m3googlesitemap.php 에서 해당 오류를 수정
9. 오류가 없다면 Sitemap 제출
(Sitemap 제출 후에도 해당 sitemap xml 파일에 오류가 있는지 리포트 됩니다.)
# 원본에서 수정사항
- 그누보드5 용으로 변환
- UTF-8 으로 설정 (변경이 필요하신 분은 m3googlesitemap.php line. 9 를 변경하세요)
- 최신 Google sitemap scheme 0.9 로 name space 변경
- 마지막 수정 날짜를 나타내는 lastmod 태그값을 변경된 형식 [ 2004-10-01T18:23:17+00:00 ] 으로 변경
- 코멘트가 없는 보드의 변경 주기 changefreq 태그값을 monthly --> weekly 로 변경
워드프레스에서는 유명한 SEO 툴이 있어서 그냥 사용했는데, 보유한 문서들의 구글 검색에 꽤 도움이 되는 것 같았습니다.(적어도 기분상으로는...) 홈페이지에 새로운 내용이 추가 될 때 검색엔진에 반영도 빠르구요.
대충 결과는 잘 나오는 것 같은데, 그누보드 구조를 잘 몰라서... 고수님들의 손길을 기다립니다.
넘어와서 다른건 별 아쉬움이 없었는데 구글 sitemap 등록 기능을 찾기가 힘드네요.
자료를 구글링하다보니 예전에 그누보드4용으로 올라왔던 사이트맵 생성기 자료가 있어서(말러83 님) 급히 그누보드5 용으로 수정해 봤습니다.
그누보드4 용 원본글 : http://sir.co.kr/bbs/board.php?bo_table=g4_tiptech&wr_id=19952&page=1&sca=&sfl=&stx=&spt=0&page=1&cwin=#c_33937
배포 페이지 : http://bomool.net/bbs/board.php?bo_table=bo0103&wr_id=51
웹 프로그래밍 쪽으로는 잘 몰라서 이리저리 삽질 좀 하면서 닥치는대로 수정한 코드라 하드코딩과 비효율적인 부분들이 눈에 띄실겁니다;;
그냥저냥 동작하는거 같으니 필요하신 분 수정해서 사용하세요.
# 설치방법
1. 다운로드 받은 m3googlesitemap.php 파일 7라인에 자신의 그누보드 설치 경로를 입력 (마지막 / 넣지 않음!)
2. 그누보드 설치 폴더에 m3googlesitemap.php 파일을 올려둔다.
3. 업로드 한 파일을 브라우저에서 열어서 XML 파일이 정상적으로 생성되어 보이는지 확인한다.
4. 구글 웹마스터 도구 페이지에 접속한다. https://www.google.com/webmasters/
5. 로그인(혹은 가입 후 로그인) -> 사이트 추가 -> 자신의 홈페이지를 절차에 따라 등록
6. 추가한 홈페이지를 선택 [웹 마스터 도구 -> 크롤링 -> Sitemaps] 선택
7. [Sitemap 추가/테스트] 선택 -> m3googlesitemap.php 경로 입력
예) http://www.aaa.com/g5/m3googlesitemap.php
8. [Sitemap 테스트] 클릭! --> 만약 오류가 있다면 리포트 됨. m3googlesitemap.php 에서 해당 오류를 수정
9. 오류가 없다면 Sitemap 제출
(Sitemap 제출 후에도 해당 sitemap xml 파일에 오류가 있는지 리포트 됩니다.)
# 원본에서 수정사항
- 그누보드5 용으로 변환
- UTF-8 으로 설정 (변경이 필요하신 분은 m3googlesitemap.php line. 9 를 변경하세요)
- 최신 Google sitemap scheme 0.9 로 name space 변경
- 마지막 수정 날짜를 나타내는 lastmod 태그값을 변경된 형식 [ 2004-10-01T18:23:17+00:00 ] 으로 변경
- 코멘트가 없는 보드의 변경 주기 changefreq 태그값을 monthly --> weekly 로 변경
워드프레스에서는 유명한 SEO 툴이 있어서 그냥 사용했는데, 보유한 문서들의 구글 검색에 꽤 도움이 되는 것 같았습니다.(적어도 기분상으로는...) 홈페이지에 새로운 내용이 추가 될 때 검색엔진에 반영도 빠르구요.
대충 결과는 잘 나오는 것 같은데, 그누보드 구조를 잘 몰라서... 고수님들의 손길을 기다립니다.
추천
6
6
댓글 전체
좋은 정보 감사 드립니다.
좋은정보 감사합니다. 잘 사용할게요
좋은정보 감사합니다. 잘 쓰겠습니다.
감사합니다 전 항상 웹에서 만들어서 사용했었는데 한 10분 넘게 걸려요..
좋은정보 감사합니다.
좋아요.
GodsTale 님 sitemap.xml 바로 생성되게 살짝? 수정했습니다^^;;
http://sir.co.kr/bbs/board.php?bo_table=g5_plugin&wr_id=446
http://sir.co.kr/bbs/board.php?bo_table=g5_plugin&wr_id=446
질문드려요 이거 등록해 놓으면 자동으로 사이트맵이 구글에 업데이트 되는건가요?
감사합니다.
대박입니다~ 잘 됩니다 감사드려영
좋은 자료 감사합니다.
올려주셔서 감사합니다. 잘 쓰고 있습니다.
특정 게시판은 sitemap 생성 제외시키는 방법도 있는지요?
예) board.php?bo_table=free
특정 게시판은 sitemap 생성 제외시키는 방법도 있는지요?
예) board.php?bo_table=free
감사합니다 ^^
좋은 정보 감사합니다.
감사합니다.^^
감사합니다.
5.4는 안되네요 ㅠㅠ
php.ini에서 short_open_tag 를 On 시키니깐 되네요.
20년에 좋은자료 받아갑니다~
PHP 7.2 호환 버전
<?php
// m3 google sitemap ver 1.23 by mahler83 2009-11-16
// please give feedbacks to bomool.net
include_once("./_common.php");
$charset = $g5['charset'];
$url = "http://127.0.0.1/gnu54"; // G5 루트 경로
header("Content-type: text/xml;charset=\"UTF-8\"");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
?>
<urlset xmlns="https://www.sitemaps.org/schemas/sitemap/0.9/">
<?php
$query = sql_query("select bo_table from `{$g5['board_table']}` where bo_read_level='1'");
while($temp = sql_fetch_array($query)) {
$bo_arr[] = $temp['bo_table'];
}
$i = 1;
foreach($bo_arr as $bo) {
// list of bo_table
echo "<url>\n";
echo "<loc>$url/bbs/board.php?bo_table=$bo</loc>\n";
$temp = sql_fetch("select wr_datetime from `{$g5['write_prefix']}{$bo}` order by wr_datetime DESC");
$lastmod = str_replace(" ", "T", substr($temp['wr_datetime'], 0, 30))."+00:00";
// if
if(!$lastmod || strlen($lastmod) < 25 || strcmp($lastmod, "+00:00")) $lastmod = "2014-10-10T00:00:00+00:00";
echo "<lastmod>$lastmod</lastmod>\n";
echo "<changefreq>daily</changefreq>\n";
echo "<priority>0.9</priority>\n";
echo "</url>\n";
$query = sql_query("select wr_id, wr_datetime from `{$g5['write_prefix']}{$bo}` where wr_is_comment='0' AND wr_option NOT LIKE '%secret%'");
while($row = sql_fetch_array($query)) {
// list of each article
echo "<url>";
echo "<loc>$url/bbs/board.php?bo_table=$bo&wr_id={$row['wr_id']}</loc>";
$temp = sql_fetch("select wr_datetime from `{$g5['write_prefix']}{$bo}` where wr_parent='{$row['wr_id']}' order by wr_id DESC");
$lastmod = str_replace(" ", "T", substr($temp['wr_datetime'], 0, 30))."+00:00";
if(!$lastmod) {
$temp = sql_fetch("select wr_datetime from `{$g5['write_prefix']}$bo` where wr_id='{$row['wr_id']}'");
$lastmod = str_replace(" ", "T", substr($temp['wr_datetime'], 0, 30))."+00:00";
}
if(!$lastmod) $lastmod = $g5['time_ymd'];
echo "<lastmod>$lastmod</lastmod>";
echo "<changefreq>weekly</changefreq>";
echo "<priority>0.5</priority>";
echo "</url>\n";
}
$i++;
}
?>
</urlset>
<?php
// m3 google sitemap ver 1.23 by mahler83 2009-11-16
// please give feedbacks to bomool.net
include_once("./_common.php");
$charset = $g5['charset'];
$url = "http://127.0.0.1/gnu54"; // G5 루트 경로
header("Content-type: text/xml;charset=\"UTF-8\"");
header("Cache-Control: no-cache, must-revalidate");
header("Pragma: no-cache");
echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
?>
<urlset xmlns="https://www.sitemaps.org/schemas/sitemap/0.9/">
<?php
$query = sql_query("select bo_table from `{$g5['board_table']}` where bo_read_level='1'");
while($temp = sql_fetch_array($query)) {
$bo_arr[] = $temp['bo_table'];
}
$i = 1;
foreach($bo_arr as $bo) {
// list of bo_table
echo "<url>\n";
echo "<loc>$url/bbs/board.php?bo_table=$bo</loc>\n";
$temp = sql_fetch("select wr_datetime from `{$g5['write_prefix']}{$bo}` order by wr_datetime DESC");
$lastmod = str_replace(" ", "T", substr($temp['wr_datetime'], 0, 30))."+00:00";
// if
if(!$lastmod || strlen($lastmod) < 25 || strcmp($lastmod, "+00:00")) $lastmod = "2014-10-10T00:00:00+00:00";
echo "<lastmod>$lastmod</lastmod>\n";
echo "<changefreq>daily</changefreq>\n";
echo "<priority>0.9</priority>\n";
echo "</url>\n";
$query = sql_query("select wr_id, wr_datetime from `{$g5['write_prefix']}{$bo}` where wr_is_comment='0' AND wr_option NOT LIKE '%secret%'");
while($row = sql_fetch_array($query)) {
// list of each article
echo "<url>";
echo "<loc>$url/bbs/board.php?bo_table=$bo&wr_id={$row['wr_id']}</loc>";
$temp = sql_fetch("select wr_datetime from `{$g5['write_prefix']}{$bo}` where wr_parent='{$row['wr_id']}' order by wr_id DESC");
$lastmod = str_replace(" ", "T", substr($temp['wr_datetime'], 0, 30))."+00:00";
if(!$lastmod) {
$temp = sql_fetch("select wr_datetime from `{$g5['write_prefix']}$bo` where wr_id='{$row['wr_id']}'");
$lastmod = str_replace(" ", "T", substr($temp['wr_datetime'], 0, 30))."+00:00";
}
if(!$lastmod) $lastmod = $g5['time_ymd'];
echo "<lastmod>$lastmod</lastmod>";
echo "<changefreq>weekly</changefreq>";
echo "<priority>0.5</priority>";
echo "</url>\n";
}
$i++;
}
?>
</urlset>
php7.3 사용하고 있는데, 원본이 에러가 생겨, 신비님이 7.2 호환버젼으로 적용하니 되네요. 감사합니다
그런데, 내용물이 몇개 적용이 안되는 것은 왜 그렇지요?
무료 만들기 사이트 가서 xml로 만들면 내용량이 무쟈게 만던데요. 궁금해서 여쭤봅니다.^^
그런데, 내용물이 몇개 적용이 안되는 것은 왜 그렇지요?
무료 만들기 사이트 가서 xml로 만들면 내용량이 무쟈게 만던데요. 궁금해서 여쭤봅니다.^^
그건 저도 잘...^^;;
ps.
$g5['charset'] --> G5_DB_CHARSET
$g5['time_ymd'] --> G5_TIME_YMD
ps.
$g5['charset'] --> G5_DB_CHARSET
$g5['time_ymd'] --> G5_TIME_YMD
5.4 짧은 주소를 사용하는데요. 그냥 긴 주소로 뽑아오네요. 이거는 짧은 주소 적용이 안되는지요?
그리고 추신으로 적어 넣은
$g5['charset'] --> G5_DB_CHARSET
$g5['time_ymd'] --> G5_TIME_YMD
이거는 무슨 말씀이신지요? ^^
그리고 추신으로 적어 넣은
$g5['charset'] --> G5_DB_CHARSET
$g5['time_ymd'] --> G5_TIME_YMD
이거는 무슨 말씀이신지요? ^^
작동되게 걍 코드 변환만 시켜놓은 거라....
아마, 그누4 기반 소스라 그런 듯 싶네요.
위 코드에서 코드 변환 덜 된 부분입니다.
아마, 그누4 기반 소스라 그런 듯 싶네요.
위 코드에서 코드 변환 덜 된 부분입니다.
구글에서 오류가 뜨며 등록이 안되네요.ㅎㅎ
신비짱님 감사합니다~
배추빌더5에도 사이트맵 관련 소스 있어요. 참고해 보세요.
게시물이 많이지고나서, 해당 사이트맵 파일을 로딩하면 504 게이트웨이 에러가 나면서 싸이트가 뻗어버리는데 어떤 자료를 참조해야할지 궁금합니다.
php7.4 그누보드 나리야 사용중에 있습니다.
php7.4 그누보드 나리야 사용중에 있습니다.
감사합니다
안녕하세요 혹시 사이트맵 생성 시 주소를 http가 아닌 https로 적용되게 할 수 없을까요?
감사합니다!
구글
최고네요.. 잘 해결했습니다. 감사합니다.
그냥 루트에 올리면 되는거였네요~
어려운 질문 해서 죄송합니다.
그냥 루트에 올리면 되는거였네요~
어려운 질문 해서 죄송합니다.
이런 좋은 정보가..
사이트맵
헉 구글전용이라니 제가 찾던겁니다 너무 감사해요!!