plugins:seositemaps

NP_SEOSitemaps.php

sitemaps.org の仕様に準拠した sitemap を作成するプラグイン

General Plugin info
作者: Niels Leenheer + shizuki
最新のバージョン: 1.2
入手先: http://japan.nucleuscms.org/bb/download/file.php?id=1086
ソース: seositemaps_code
フォーラム参照先: http://japan.nucleuscms.org/bb/viewtopic.php?t=2916
セキュリティチェック: N/A

インストール方法

  1. Zipファイルを展開して、中身をサーバーのプラグインディレクトリにアップロードする
  2. 管理画面からプラグインをインストールする
  3. .htaccess の編集
    NP_CustomURL と同じ、
    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?virtualpath=$1 [L,QSA]

    もしくは

    RewriteEngine on
    RewriteCond %{REQUEST_FILENAME} sitemap.xml
    RewriteRule ^(.*)$ index.php?virtualpath=$1 [L,QSA]

    と記述する事で、アドレス欄に表示されるURLが変更される事無くアクセスが可能になります

modRewrite が使えない場合

FancyURL モードでの運用の場合、自動更新通知に使用される URL

http://ブログのURL/オプションで指定した仮想ファイル名

となりますが、modRewrite が使用できない場合でも、.htaccess に

RedirectMatch /sitemap\.xml /index.php?virtualpath=sitemap.xml

(sitemap.xml はオプションで指定した仮想ファイル名)と記述する事で、サーバが自動的に

http://ブログのURL/index.php?virtualpath=オプションで指定した仮想ファイル名

にリダイレクトしてくれます([アドレス]欄に表示される URL はリダイレクト後のものになります)
また、FancyURL を使用しない場合は、自動更新通知の URL

http://ブログのURL/index.php?virtualpath=オプションで指定した仮想ファイル名

になりますので .htaccess の記述は不要となります

このプラグインの使い方

インストール完了後、「Google ウェブマスターツール」や「Yahoo! Site Explorer」へ

http://ブログのURL/sitemap.xml 

を登録します
各ブログのオプションで「更新を Google/Yahoo! に通知する」を「はい」にしておくと、アイテムを追加した時に自動で Google/Yahoo! に更新を通知します
(googleへの登録方法は割愛)
Yahoo! へ更新を通知する場合は、Yahoo.comでアプリケーションIDを取得する必要があります

オプション

グローバルオプション

  • AllBlog モードでサイトマップを作成する(サブ/マルチドメインは除外)
    全ブログを網羅した sitemap を作成するか
    (サブドメイン・マルチドメインを使用しているブログは除外されます)

ブログオプション

  • アイテム追加時に Google に更新を通知する
    アイテムを追加した時に Google に sitemap を送信するか
  • アイテム追加時に Yahoo! に更新を通知する
    アイテムを追加した時に Yahoo.com に更新を通知するか
  • Yahoo! Application ID
    Yahoo! のアプリケーションID
  • AllBlog モードのときにこのブログを含める
    全ブログを網羅した sitemap 作成時にこのブログを含めるか
  • PC 用サイトマップファイルの仮想ファイル名
    PC用 sitemap の仮想ファイル名
  • モバイル用サイトマップファイルの仮想ファイル名
    モバイル用 sitemap の仮想ファイル名

バグ(?)

  • Yahoo! Site Exploereへ更新を通知しても、Last Submittedが更新されない

Tips and Tricks

このプラグインは「SiteMap」イベントを発生させます
このイベントを別のプラグインでフックすることで、NP_ExtraSkin(JP) 等で作ったページをサイトマップに加えることが出来ます 以下は NP_ExtraSkinJP のページをサイトマップに追加するプラグインのコードです NP_AddExtraSkinSitemap.php の名前で保存してください

<?php
class NP_AddExtraSkinSitemap extends NucleusPlugin {
	function getName() { return 'Add ExtraSkin page for GoogleSitemap'; }
	function getAuthor() { return 'Shizuki'; }
	function getURL() { return 'http://japan.nucleuscms.org/wiki/plugins:googlesitemap#tips_and_tricks'; }
	function getVersion() { return '1.0'; }
	function getDescription() { return 'Add ExtraSkin page for GoogleSitemap.'; }
	function getPluginDep() { return array('NP_GoogleSitemap', 'NP_ExtraSkinJP'); }
	function supportsFeature ($what) {
		switch ($what) {
			case 'SqlTablePrefix':
				return 1;
			default:
				return 0;
		}
	}
	function event_SiteMap(&$data) {
		global $CONF;
		$res = sql_query('SELECT * FROM ' .
						sql_table('plug_extraskin_jp') .
						' WHERE url != "" ORDER BY title');
		while ($row = mysql_fetch_array($res)) {
			$data['sitemap'][] = array (
				'loc' => $CONF['BlogURL'] . '/extra/' . $row['url'],
				'priority' => '0.8'
			);
		}
	}
}
?>

オートディスカバリ(自動検出)について

開発履歴

  • Version 1.1リリース <2007-03-14>
 
plugins/seositemaps.txt · 最終更新: 2011/03/23 21:28 (外部編集)