구글SEO

[구글SEO] 사이트맵 (Stiemap) 을 만드는 간단한 PHP 구문


[구글SEO] 사이트맵 (Stiemap) 을 만드는 간단한 PHP 구문


  2023-09-05  152 View 공개

사이트맵(Sitemap)을 PHP로 동적으로 생성하려면 기본적으로 XML 형식에 맞게 콘텐츠를 출력해야 한다. 아래는 간단한 PHP 코드 예제로, 동적으로 사이트맵을 생성하는 방법을 보여준다.

  1. 데이터베이스 연결 설정 (예제에서는 MySQL을 사용한다):
php
$host = 'localhost';
$db = 'my_database';
$user = 'my_user';
$pass = 'my_password';
$charset = 'utf8mb4';

$dsn
= 'mysql:host=$host;dbname=$db;charset=$charset';
$options = [
 PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
 PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
 PDO::ATTR_EMULATE_PREPARES => false,
];

$pdo
= new PDO($dsn, $user, $pass, $options);
  1. 사이트맵 생성:
php
// Content type 설정
header('Content-Type: application/xml; charset=utf-8');

echo
'<?xml version='1.0' encoding='UTF-8'?>' . PHP_EOL;
echo '<urlset xmlns='http://www.sitemaps.org/schemas/sitemap/0.9'>' . PHP_EOL;

// 여기서는 예제로 articles 테이블에서 게시글 URL을 가져옵니다.

$stmt = $pdo->query('SELECT id, last_modified_date FROM articles');
while ($row = $stmt->fetch()) {
   echo '<url>' . PHP_EOL;
   echo '<loc>https://yourdomain.com/article.php?id=' . $row['id'] . '</loc>' . PHP_EOL; // 여기에 실제 도메인과 경로를 입력해야 한다.
   echo '<lastmod>' . $row['last_modified_date'] . '</lastmod>' . PHP_EOL; // ISO 8601 형식의 날짜가 필요하다.
   echo '<changefreq>monthly</changefreq>' . PHP_EOL; // 이것은 예시로, 실제 변경 빈도에 따라 조정이 필요하다.
   echo '<priority>0.8</priority>' . PHP_EOL; // 1.0이 가장 높은 우선순위, 0.1이 가장 낮습니다.
   echo '</url>' . PHP_EOL;
}

echo
'</urlset>';

위 코드는 간단한 예시이므로 실제 사용할 때는 보다 구체적인 로직과 예외 처리, 최적화 등의 작업이 필요하다. 또한, 웹사이트의 크기와 구조에 따라 추가적인 URL들을 사이트맵에 포함시켜야 할 수도 있다.



🚩 구글SEO 글 모음 (총 3 건)

[구글SEO] 구글 검색엔진이 특정 폴더를 색인하지 않도록 하는 방법

Last Updated : 2023-09-05

[구글SEO] 사이트맵 (Stiemap) 을 만드는 간단한 PHP 구문

Last Updated : 2023-09-05

[구글SEO] Sitemap.xml 의 구조와 형식

Last Updated : 2023-09-05