2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Google Search Consoleにサイトマップを登録したら、検索パフォーマンスが瀑上がりした!

Posted at

XMLサイトマップをサーチコンソールに登録すると、どのくらいSEO効果があるのか、疑問ですよね?
先日、大量にサイトマップを登録したので、結果を報告します。
#サイトマップが必要かどうか
次の場合にサイトマップが必要になることがあります。

  1. サイトのサイズが非常に大きい。
  2. サイトにどこからもリンクされていない、または適切にリンクされていないコンテンツ ページのアーカイブが大量にある。
  3. サイトが新しく、外部からのリンクが少ない。
  4. サイトに動画や画像などのリッチメディア コンテンツが多数含まれている、またはサイトが Google ニュースに表示されている。

自分のサイトは、2の「ページのアーカイブが大量にある」に該当するので、施策していこうと思います。

#サイトマップの作成
次の例は、1 つの URL の場所を指定するごく基本的な XML サイトマップです。

<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
  <url>
    <loc>https://hoge.com/foo.html</loc>
    <lastmod>2018-06-04</lastmod>
  </url>
</urlset>

#動的に生成されるコンテンツのサイトマップ
自分のサイトは、動的に生成されるURLが非常に多いので、これを全て含めてサイトマップを生成しようと思います。

<?php

$mysqli = new mysqli('localhost', 'root', 'password', 'database');
$mysqli->set_charset("utf8");

$sitemap = '<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">';

$result = $mysqli->query("SELECT id, up FROM table"); //データベース等から、ページ情報を引っ張ってきてURLのところに貼る。何ページかをループで回す。
while ($row = $result->fetch_assoc()) {
    $d = new DateTime($row["up"]);
    $sitemap .= '
    <url>
        <loc>https://hoge.com/?id=' . $row["id"] . '</loc>
        <lastmod>' . $d->format('Y-m-d\TH:i:s+00:00') . '</lastmod>
    </url>';
}
$sitemap .= '
</urlset>';

file_put_contents($_SERVER["DOCUMENT_ROOT"].'/sitemap.xml', $sitemap); //これだとhttps://hoge.com/sitemap.xmlにサイトマップが置かれる

#生成と送信の自動化
最後にサイトマップの生成と送信の自動化を行います。
自動化はcronを使います。

$ crontab -e
30 04 * * * php /var/www/html/sitemap.php //先程、作ったphpファイル
40 04 * * * curl https://www.google.com/ping?sitemap=https://hoge.com/sitemap.xml //phpファイルで生成した、XMLファイルをGoogle Search Consoleに送信

#最後に
お疲れさまでした。
自分は、大量の動的URLをGoogle Search Consoleに送信することにより、検索パフォーマンスが3倍ぐらいになりました。
大量の動的URLがある方は、試しに施策してみるのも、良いかもしれません。

お世話になったサイトです。

  1. Google 検索でウェブサイトをアピールする方法
  2. PHPでサイトマップを動的に生成する
2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?