<?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>GoogleDocs &#8211; Mach3.laBlog</title>
	<atom:link href="https://blog.mach3.jp/tag/googledocs/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.mach3.jp</link>
	<description></description>
	<lastBuildDate>Mon, 14 Feb 2011 04:41:31 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9</generator>
	<item>
		<title>GoogleスプレッドシートとYahooPipesで簡易CMSを作る</title>
		<link>https://blog.mach3.jp/2011/02/14/cms-with-yahoopipes.html</link>
		
		<dc:creator><![CDATA[mach3]]></dc:creator>
		<pubDate>Mon, 14 Feb 2011 04:41:31 +0000</pubDate>
				<category><![CDATA[Laboratory]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[GoogleDocs]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[jsdoit]]></category>
		<category><![CDATA[Yahoo]]></category>
		<category><![CDATA[Yahoo!Pipes]]></category>
		<category><![CDATA[Yokohama.js]]></category>
		<guid isPermaLink="false">http://blog.mach3.jp/?p=1573</guid>

					<description><![CDATA[2/13に執り行なわれたYokohama.jsでしゃべらせて頂いたお題です。 資料等はjsdo.itにて公開していますが、ブログにも軽くまとめておきます。 ざっくりとした話はスライドで 要するに、Googleスプレッドシ [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>2/13に執り行なわれたYokohama.jsでしゃべらせて頂いたお題です。<br />
資料等はjsdo.itにて公開していますが、ブログにも軽くまとめておきます。</p>



<figure class="wp-block-image"><img decoding="async" src="https://lh3.googleusercontent.com/_JJkNs5Ixl70/TVi0yNumdhI/AAAAAAAABLg/81TMGlPfqC0/201102141348.png" alt="GoogleスプレッドシートとYahooPipesで簡易CMSを作る "/></figure>



<p></p>



<span id="more-1573"></span>



<h2 class="wp-block-heading">ざっくりとした話はスライドで</h2>



<p><iframe src="https://docs.google.com/present/embed?id=dj4svm6_66hckbkbdc&amp;interval=5&amp;size=m" frameborder="0" width="555" height="451"></iframe></p>



<p>要するに、Googleスプレッドシートで作ったデータを元に、<br />
更新管理する仕組みをYahoo!Pipesを経由してやってみよう！という試みです。</p>



<h3 class="wp-block-heading">メリット</h3>



<ol class="wp-block-list">
<li>CMSはわからないけどExcelはわかるよ！という方が幸せになる</li>



<li>導入コスト/学習コストが安くて幸せ</li>



<li>表計算UIの方が更新しやすいコンテンツで幸せになれる</li>
</ol>



<p>特に、3番目。<br />
tableを使って表現したい物などはWordpressやMovableTypeでは更新しづらいですね。<br />
それならGoogleスプレッドシートのUIを利用して…と思った次第です。</p>



<h3 class="wp-block-heading">デメリット</h3>



<ol class="wp-block-list">
<li>アウトプットがちょっと不安定</li>



<li>リアルタイム性に欠ける</li>
</ol>



<p>恐らくPipes内のキャッシュの問題だと思うのですが、<br />
外部リソースを更新してもすぐに反映されるわけではなく、数分のタイムラグがあるようです。</p>



<h2 class="wp-block-heading">デモ＆ソースコード</h2>



<p><a href="http://jsdo.it/mach3/k27L">GoogleDocs + Yahoo!Pipes &#8211; jsdo.it &#8211; Share JavaScript, HTML5 and CSS</a></p>



<p>かいつまんで説明など。<br />
基本的にJSONPでYahooPipesの出力をとってきてるだけです。</p>


<pre class="wp-block-code"><span><code class="hljs language-javascript">$.ajax({
    <span class="hljs-attr">url</span> : pipeUrl,
    <span class="hljs-attr">dataType</span> : <span class="hljs-string">"jsonp"</span>,
    <span class="hljs-attr">jsonp</span> : <span class="hljs-string">"_callback"</span>, <span class="hljs-comment">// "callback"じゃないよ！</span>
    <span class="hljs-attr">success</span> : <span class="hljs-function"><span class="hljs-keyword">function</span>(<span class="hljs-params"> data </span>)</span>{ ... }
});
</code></span></pre>


<p>注意点としては、JSONP用のコールバックのパラメータが、<br />
jQueryデフォルトの「callback」ではなく、「_callback」だという点。<br />
successパラメータの関数の中身で、受け取ったデータを元にHTMLを生成します。</p>


<pre class="wp-block-code"><span><code class="hljs language-javascript"><span class="hljs-comment">// アイテム数が0だった場合の処理</span>
<span class="hljs-keyword">if</span>( !data.count ){
    $(<span class="hljs-string">"&lt;p&gt;"</span>).addClass(<span class="hljs-string">"caution"</span>)
    .text(<span class="hljs-string">"おや？Yahoo!Pipesさんの機嫌が悪いようです…"</span>)
    .hide().appendTo( container ).fadeIn();
    <span class="hljs-keyword">return</span>;
}
</code></span></pre>


<h2 class="wp-block-heading">
  まとめ<br />
</h2>



<p>
  スライドにもありますが、実際のところサーバサイドで処理すべき場面が多いと思います。<br /> JavaScriptで書いたのは「Yokohama.js」のお題だったので。
</p>



<p>
  Pipesさんの機嫌に左右されまくった実験でしたが、<br /> この不安定さは書き方で改善出来るのだろうか…などと思案中です。
</p>



<hr class="wp-block-separator has-alpha-channel-opacity"/>



<p>
  （リソースまとめ）
</p>



<ul class="wp-block-list">
<li><br />    <a href="https://docs.google.com/present/view?id=dj4svm6_66hckbkbdc">プレゼンテーションスライド</a><br />  </li>



<li><br />    <a href="https://spreadsheets.google.com/ccc?key=0Ark6jIWYcmkLdE4wczRualZYOXR2T29lUHFtN283R2c&amp;hl=ja&amp;authkey=CO6o1NgJ#gid=0">スプレッドシート</a><br />  </li>



<li><br />    <a href="http://pipes.yahoo.com/pipes/pipe.info?_id=5316f3735d5dc707bf07a090ecf3a9b6">パイプ</a><br />  </li>



<li><br />    <a href="http://jsdo.it/mach3/k27L">DEMO(jsdo.it)</a><br />  </li>
</ul>
]]></content:encoded>
					
		
		
			</item>
	</channel>
</rss>
