<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>ウェビンブログ &#187; google</title>
	<atom:link href="http://blog.webbingstudio.com/tag/google/feed" rel="self" type="application/rss+xml" />
	<link>http://blog.webbingstudio.com</link>
	<description>札幌のWebデザイナー・カスタマイズアドバイザー WebbingStudioのよしなし語り</description>
	<lastBuildDate>Fri, 30 Jul 2010 00:11:50 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>ja</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>地図追加機能を投稿画面に標準で実装しているCMS</title>
		<link>http://blog.webbingstudio.com/2010/01/entry_map.html</link>
		<comments>http://blog.webbingstudio.com/2010/01/entry_map.html#comments</comments>
		<pubDate>Wed, 27 Jan 2010 07:25:54 +0000</pubDate>
		<dc:creator>WebbingStudio</dc:creator>
				<category><![CDATA[CMS]]></category>
		<category><![CDATA[a-blog cms]]></category>
		<category><![CDATA[bingo!cms]]></category>
		<category><![CDATA[concrete5]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[jumdo]]></category>

		<guid isPermaLink="false">http://blog.webbingstudio.com/?p=1300</guid>
		<description><![CDATA[
前回の記事で書いた通り、地図を追加する機能を標準で持っていないMovableTypeに、それを実装しようとすると、この記事を書いた時点では有力なプラグインがなく、面倒なカスタマイズが必要になります。
あんな長いチュート [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_alogcms.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_alogcms-480x397.jpg" alt="" title="map_alogcms" width="480" height="397" class="alignnone size-large wp-image-1301" /></a></p>
<p><a href="http://blog.webbingstudio.com/2010/01/movabletype_googlemaps_thickbox.html">前回の記事</a>で書いた通り、地図を追加する機能を標準で持っていないMovableTypeに、それを実装しようとすると、この記事を書いた時点では有力なプラグインがなく、面倒なカスタマイズが必要になります。</p>
<p>あんな長いチュートリアルを書いておいてなんですが、どうしてもMovableTypeを使わなければならない案件でないなら、標準で実装しているCMSを提案した方が、予算・工数の面からも確実というものです。</p>
<p><span id="more-1300"></span></p>
<p>私が把握している、投稿画面に地図追加機能を実装しているCMSは下記の通りです。</p>
<ol>
<li><a href="http://www.a-blogcms.jp/" class="blank">a-blog cms</a></li>
<li><a href="http://concrete5-japan.org/" class="blank">concrete5</a></li>
<li><a href="http://www.bingo-cms.jp/" class="blank">bingo!CMS</a></li>
<li><a href="http://jp.jimdo.com/" class="blank">Jimdo</a></li>
</ol>
<p>このうち、bingo!CMSはYahoo!マップ、それ以外はGoogleMapsのAPI Keyを取得する必要があります。</p>
<p>地図の目的地を検索し、中心に持ってきて吹き出しのコメントを入力する、という操作感はどれもほぼ同じです。<br />
尚、冒頭のスクリーンショットはa-blog cmsの画面です（私の本サイトの投稿画面なので、デフォルトとはカラーリングが異なります）。</p>
<p>ただし、四つのCMSは設計思想が微妙に異なっています。<br />
a-blog cmsはMovableType・WordPressと同様に、カテゴリーや時系列のアーカイブでコンテンツを出力する更新方法が基本設計ですが、残りの三つは実際に表示されているコンテンツ内をクリックして、ホームページビルダーやDreamweaverのように、直感的に編集させる更新方法が基本になっています。</p>
<p>コンテンツが少なく、各ページの構成が異なるサイトであれば下の三つの方が構築しやすいですし、前の記事のような、入力フォーマットがが決まっているコンテンツを大量に生成するサイトであれば、a-blog cmsが適していると考えられます。</p>
<p>個人的には、MovableType・WordPressの代替として選択するのであれば、管理画面のカスタマイズのしやすさの点からも、機能面の近さからもa-blog cmsをお勧めしたいところです。</p>

<a href="http://twitter.com/?status=RT+%40%3A+%E5%9C%B0%E5%9B%B3%E8%BF%BD%E5%8A%A0%E6%A9%9F%E8%83%BD%E3%82%92%E6%8A%95%E7%A8%BF%E7%94%BB%E9%9D%A2%E3%81%AB%E6%A8%99%E6%BA%96%E3%81%A7%E5%AE%9F%E8%A3%85%E3%81%97%E3%81%A6%E3%81%84%E3%82%8BCMS+-+%E3%82%A6%E3%82%A7%E3%83%93%E3%83%B3%E3%83%96%E3%83%AD%E3%82%B0+%3E%3Ehttp%3A%2F%2Ftinyurl.com%2Fykthzok&amp;in_reply_to_status_id=8270830070" class="tweet-this" ><br /><img src="http://blog.webbingstudio.com/admin/wp-content/plugins/simple-tweet/img/tweet.gif" alt="Twitter" />Twitterで記事を紹介して下さい（-人-）</a>]]></content:encoded>
			<wfw:commentRss>http://blog.webbingstudio.com/2010/01/entry_map.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MovableTypeでGoogleMapsを住所からthickboxで表示する</title>
		<link>http://blog.webbingstudio.com/2010/01/movabletype_googlemaps_thickbox.html</link>
		<comments>http://blog.webbingstudio.com/2010/01/movabletype_googlemaps_thickbox.html#comments</comments>
		<pubDate>Sat, 23 Jan 2010 06:39:15 +0000</pubDate>
		<dc:creator>WebbingStudio</dc:creator>
				<category><![CDATA[Customize]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[jQuery]]></category>
		<category><![CDATA[MovableType]]></category>
		<category><![CDATA[tips]]></category>

		<guid isPermaLink="false">http://blog.webbingstudio.com/?p=1281</guid>
		<description><![CDATA[建物や場所を紹介するサイトをCMSで構築する場合、管理画面にGoogleMapsなどの地図をプレビューして直感的に更新したいところです。

需要が高いと思いますが、MovableTypeは意外にも、2010年1月の時 [...]]]></description>
			<content:encoded><![CDATA[<p>建物や場所を紹介するサイトをCMSで構築する場合、管理画面にGoogleMapsなどの地図をプレビューして直感的に更新したいところです。</p>

<p>需要が高いと思いますが、MovableTypeは意外にも、2010年1月の時点でこの機能を追加できる有力なプラグインがないようです。<br />
手作業でのカスタマイズ方法は下記ページで紹介されていますが、投稿画面編集・GoogleMapsの座標取得の知識が必要です。</p>

<p><a href="http://www.skyward-design.net/blog/archives/000076.html" class="blank">Movable Typeの記事投稿画面にGoogle Mapsを表示｜Skyward Design</a></p>

<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_0.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_0-200x122.jpg" alt="" title="map_0" width="200" height="122" class="alignleft size-medium wp-image-1282" /></a></p>

<p>もうひとつの選択肢として、「Mapper」プラグインを使って、管理画面で入力した「住所」から地図を自動表示させる方法があります。<br />
今回はさらにjQueryプラグイン「thickbox」を連携させ、モーダルポップアップで表示するカスタマイズを紹介します。</p>
<div class="clear"></div>

<span id="more-1281"></span>
<div id="box2">
<ol>
  <li><a href="#no01">デモサイト</a></li>
  <li><a href="#no02">注意点</a></li>
  <li><a href="#no03">プラグイン・ライブラリを用意する</a></li>
  <li><a href="#no04">GoogleMaps API Keyを入手する</a></li>
  <li><a href="#no05">プラグインを有効化する</a></li>
  <li><a href="#no06">住所のカスタムフィールドを作成する</a></li>
  <li><a href="#no07">ブログ記事テンプレートを２つ作る</a></li>
  <li><a href="#no08">コンテンツ用テンプレートの作成</a></li>
  <li><a href="#no09">ポップアップ用テンプレートの作成</a></li>
</ol>
</div>

<h3 id="no01">デモサイト</h3>

<p>本記事のデモサイトはこちらです。（ベース：MovableType5）</p>

<p><a href="http://webbingstudio.com/test/mapper_test/" class="blank">Mapperプラグインデモ ＊ 道民部がたむろしている店</a></p>

<p>時間ないので店は数件しか登録してないですが…w</p>

<p>お店の個別ページで、「地図を表示する」リンクをクリックすると、住所を参照した地図がthickboxのポップアップで表示されます。<br />
住所欄には正規版の機能であるカスタムフィールドを使っていますが、追記欄をうまく活用すればMTOSでも可能です。</p>


<h3 id="no02">注意点</h3>

<p>住所から検索・変換をしているため、正確性にやや難があります。<br />
（デモサイトの場合、串鳥の座標が東急の真上になってしまってます）<br />
吹き出しの内容も詳細指定するなど、完璧さを重視する場合はGoogleの公式コードを直接書き込むなど、別の方法を検討してください。</p>


<h3 id="no03">プラグイン・ライブラリを用意する</h3>

<p>まず、カスタマイズに必要な素材を用意します。</p>

<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_1.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_1-200x113.jpg" alt="" title="map_1" width="200" height="113" class="alignleft size-medium wp-image-1283" /></a></p>

<p>「Mapper」は、任意のMTタグ内に書かれた<strong>[map:住所]</strong>という「Mapタグ」を地図に変換するMovableTypeプラグインです。</p>

<p><a href="http://code.google.com/p/ogawa/wiki/Mapper_Plugin" class="blank">http://code.google.com/p/ogawa/wiki/Mapper_Plugin</a></p>

<div class="clear"></div>
<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_2.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_2-200x136.jpg" alt="" title="map_2" width="200" height="136" class="alignleft size-medium wp-image-1284" /></a></p>

<p>「thickbox」は、リンクに特定のclassを指定するだけで、画像やHTMLをモーダルポップアップさせるjQueryのプラグインです。</p>

<p><a href="http://jquery.com/demo/thickbox/" class="blank">http://jquery.com/demo/thickbox/</a></p>

<p class="clear">jQuery本体も、まだ使ったことがない場合はこちらからダウンロードしてください。</p>

<p><a href="http://jquery.com/" class="blank">http://jquery.com/</a></p>

<p>thickbox自体の設置方法はここでは割愛します。必要なファイルをサーバーにアップロードしておいてください。</p>


<h3 id="no04">GoogleMaps API Keyを入手する</h3>

<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_3.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_3-200x106.jpg" alt="" title="map_3" width="200" height="106" class="alignleft size-medium wp-image-1285" /></a></p>

<p>Mapperを利用するには、API Keyを取得する必要があります。</p>

<p class="clear">下記ページで利用するサイトのURLを登録し、キーを取得してください。</p>

<p><a href="http://code.google.com/intl/ja/apis/maps/signup.html" class="blank">http://code.google.com/intl/ja/apis/maps/signup.html</a></p>

<h3 id="no05" class="clear">プラグインを有効化する</h3>

<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_4.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_4-200x147.jpg" alt="" title="map_4" width="200" height="147" class="alignleft size-medium wp-image-1286" /></a></p>

<p>MovableType内にMapperをアップロードします。<br />
管理画面内のMapperの設定画面に入ると、GoogleMaps API Keyを求められます。さっき入手したキーをコピペして保存してください。</p>


<h3 id="no06" class="clear">住所のカスタムフィールドを作成する</h3>

<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_51.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_51-199x171.jpg" alt="" title="map_5" width="199" height="171" class="alignleft size-medium wp-image-1294" /></a></p>

<p>住所欄のカスタムフィールドを作成します。<br />
ここでは「<strong>CFaddress</strong>」としました。ここのベースネームを変更した場合や、追記を利用する場合は、以降のGoogleMapsを呼び出すテンプレートのMTタグを読み替えてください。</p>


<h3 id="no07" class="clear">ブログ記事テンプレートを２つ作る</h3>

<p>Mapperで生成される地図はJavaScriptを多用しています。このため、コンテンツ内のMETAタグの指定や、今回使うthickbox等のjQueryライブラリと衝突しやすいです。<br />
それを防ぐために、<strong>地図だけ</strong>インラインフレームで呼び出します。</p>

<p>MovableTypeは同じアーカイブで出力URLが違うページを複数作ることができるので、これを利用して「ブログ記事テンプレート」を２つ設定します。</p>

<p><a href="http://blog.webbingstudio.com/uploads/2010/01/map_6.jpg"><img src="http://blog.webbingstudio.com/uploads/2010/01/map_6-480x177.jpg" alt="" title="map_6" width="480" height="177" class="alignnone size-large wp-image-1288" /></a></p>

<p>画面のように設定すると、</p>

<dl>
  <dt>ブログ記事</dt>
  <dd>[ブログのURL]/[カテゴリー]/post-[エントリーID].html</dd>
  <dt>Google Maps</dt>
  <dd>[ブログのURL]/[カテゴリー]/map-[エントリーID].html</dd>
</dl>

<p>という、二種類のHTMLが記事ごとに生成されることになります。</p>


<h3 id="no08">コンテンツ用テンプレートの作成</h3>

<p>「ブログ記事」という名前のテンプレートの方が、コンテンツ（地図を呼び出す本ページ）となります。<br />
HTMLソースを書き、head内に以下のコードを追加してください。</p>

<pre><code>&lt;link rel="stylesheet" type="text/css" href="[ファイルへのパス]jquery.thickbox.css" media="All" /&gt;

&lt;script type="text/javascript" src="[ファイルへのパス]jquery.js"&gt;&lt;/script&gt;
&lt;script type="text/javascript" src="[ファイルへのパス]jquery.thickbox.js"&gt;&lt;/script&gt;</code></pre>

<p>地図を表示するポップアップのリンクを表示したい個所に、以下のようにコードを書きます。<br />
a要素内のURLの詳しい記述方式については、<a href="http://jquery.com/demo/thickbox/" class="blank">thickbox</a>のページ内の「Inline Content」の項を参照してください。</p>

<pre><code>&lt;mt:If tag="CFaddress"&gt;
&lt;a href="#TB_inline?width=600&height=480&inlineId=mapframe&modal=true" class="thickbox"&gt;&amp;raquo;&amp;nbsp;地図を表示する&lt;/a&gt;
&lt;/mt:If&gt;</code></pre>

<p>さらにページの末尾、bodyの閉じタグの上あたりに、以下のコードを書きます。<br />
フレームのwidthとheightは任意調整してください。</p>

<pre><code>&lt;mt:If tag="CFaddress"&gt;
&lt;div id="mapframe" style="display: none;"&gt;
  &lt;p class="map-title"&gt;&lt;$mt:EntryTitle encode_html="1"$&gt;の周辺地図&lt;/p&gt;
  &lt;iframe src="map-&lt;$mt:EntryID$&gt;.html" width="600" height="400" marginwidth="0" marginheight="0"&gt;&lt;/iframe&gt;
  &lt;p class="map-close"&gt;&lt;input type="submit" value="×閉じる" onclick="tb_remove();" /&gt;&lt;/p&gt;
&lt;!-- /#mapframe --&gt;&lt;/div&gt;
&lt;/mt:If&gt;</code></pre>

<p>重要なのは、インラインフレームの内部HTMLを指定している部分です。</p>

<p><strong>map-&lt;$mt:EntryID$&gt;.html</strong></p>

<p>上記のようにEntryIDタグを仕込むことで、２つ目のエントリーテンプレートを呼び出すことになります。</p>


<h3 id="no09">ポップアップ用テンプレートの作成</h3>

<p>「Google Maps」という名前のテンプレートの方は、ポップアップ用です。以下のコードが全てになります。<br />
地図のwidthとheightは任意調整してください。</p>

<pre><code>&lt;html&gt;
&lt;body style="margin: 0; padding: 0;"&gt;
&lt;mt:If tag="CFaddress"&gt;
&lt;mt:Mapper width="600" height="400" zoom="18"&gt;
  &lt;p&gt;[map:&lt;$mt:CFaddress convert_breaks="0"$&gt;]&lt;/p&gt;&lt;/mt:Mapper&gt;
&lt;/mt:If&gt;
&lt;/body&gt;
&lt;/html&gt;</code></pre>

<p>Mapperで拡張されたMTタグを使い、カスタムフィールドの「住所」を表示します。<br />
段落でマークアップさせないよう、「convert_breaks」モディファイアに「0」を指定しておいた方が安全です。</p>

<p>METAタグなどは敢えて指定しない方が、各ブラウザでちゃんと表示されるようです。</p>

<p>最後にテンプレートを再構築し、リンクをクリックするとポップアップが出るか確認してください。</p>
<a href="http://twitter.com/?status=RT+%40%3A+MovableType%E3%81%A7GoogleMaps%E3%82%92%E4%BD%8F%E6%89%80%E3%81%8B%E3%82%89thickbox%E3%81%A7%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B+-+%E3%82%A6%E3%82%A7%E3%83%93%E3%83%B3%E3%83%96%E3%83%AD%E3%82%B0+%3E%3Ehttp%3A%2F%2Ftinyurl.com%2F2d4kqd4&amp;in_reply_to_status_id=8102766717" class="tweet-this" ><br /><img src="http://blog.webbingstudio.com/admin/wp-content/plugins/simple-tweet/img/tweet.gif" alt="Twitter" />Twitterで記事を紹介して下さい（-人-）</a>]]></content:encoded>
			<wfw:commentRss>http://blog.webbingstudio.com/2010/01/movabletype_googlemaps_thickbox.html/feed</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
