<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
   <title>プログラマーな日々</title>
   <link rel="alternate" type="text/html" href="http://it.senrenja.net/" />
   <link rel="self" type="application/atom+xml" href="http://it.senrenja.net/atom.xml" />
   <id>tag:it.senrenja.net,2009://2</id>
   <updated>2009-08-09T13:02:47Z</updated>
   
   <generator uri="http://www.sixapart.com/movabletype/">Movable Type 3.34</generator>

<entry>
   <title>WP e-commerce 備忘録</title>
   <link rel="alternate" type="text/html" href="http://it.senrenja.net/2009/08/wp_ecommerce.html" />
   <id>tag:it.senrenja.net,2009://2.38</id>
   
   <published>2009-08-09T00:25:02Z</published>
   <updated>2009-08-09T13:02:47Z</updated>
   
   <summary>WordPressにショッピングカートを実装するプラグインに「WP e-comm...</summary>
   <author>
      <name>senrenja</name>
      
   </author>
         <category term="CMS" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://it.senrenja.net/">
      WordPressにショッピングカートを実装するプラグインに「WP e-commerce」というのがある。しかも、現行のバージョン(3.7.1)では日本語化もされている。ただし、不完全な日本語ではあるが。

それはともかく、他のプラグイン同様にアップロード→有効化して、動作を確認していたら次のようなエラーが。

Warning: unserialize() expects parameter 1 to be string, object given in xxxxxxx/wp-content/plugins/wp-e-commerce/wp-shopping-cart.php on line 288

ファイルを開けてみたら288行目は次のようになっていた。

$GLOBALS[&apos;wpsc_cart&apos;] = unserialize($_SESSION[&apos;wpsc_cart&apos;]);

きっと同じエラーに悩んだ人がいるだろうと思い探した(英語圏も含む)が、見つからず。で、しょうがないので自分なりに解決。どうもシリアル化されていないオブジェクトをアンシリアライズしようとしてエラーに陥るときがあるみたいですね。次のように書き換えました。

if(is_string($_SESSION[&apos;wpsc_cart&apos;])){
	$GLOBALS[&apos;wpsc_cart&apos;] = unserialize($_SESSION[&apos;wpsc_cart&apos;]);
} else {
	$GLOBALS[&apos;wpsc_cart&apos;] = $_SESSION[&apos;wpsc_cart&apos;];
}

同じエラーに苦しむ人の参考になれば幸いです。
      
   </content>
</entry>
<entry>
   <title>Geeklog快適！</title>
   <link rel="alternate" type="text/html" href="http://it.senrenja.net/2007/06/geeklog.html" />
   <id>tag:it.senrenja.net,2007://2.17</id>
   
   <published>2007-06-14T10:52:29Z</published>
   <updated>2007-06-14T11:37:14Z</updated>
   
   <summary>CMS(コンテンツマネージメントシステム)というのをご存じだろうか。たとえばmi...</summary>
   <author>
      <name>senrenja</name>
      
   </author>
         <category term="CMS" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://it.senrenja.net/">
      <![CDATA[<a href="http://it.senrenja.net/41z1%2BfN7hyL._SS500_.html" onclick="window.open('http://it.senrenja.net/41z1%2BfN7hyL._SS500_.html','popup','width=500,height=500,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0'); return false"><img src="http://it.senrenja.net/41z1%2BfN7hyL._SS500_-thumb.jpg" width="100" height="100" alt="Geeklog 導入ガイド" align="left" /></a>CMS(コンテンツマネージメントシステム)というのをご存じだろうか。たとえばmixiみたいなのを手軽に構築しようとするとき、これを使うとすごく便利。有名なCMSの一つに<a href="http://jp.xoops.org/">XOOPS</a>というのがあり、かつて私も利用したことがあったが、すごく重かった。XREAの安価なサーバーを使用していたせいもあろうが、重すぎてサーバーが処理しきれないこともあるほどだった。もっとも機能を絞ればそれなりの軽快な動作が可能であったかもしれないが、XOOPSはプラグインが豊富で、しかも機能追加が簡単かつ楽勝だから、ついつい重くしちゃう。……結果、使い物にならずやめてしまった。ところで最近、ちょっとしたことから再びCMSを試す事情があって、今度は反省を生かして軽めのものを探した。そこで、諸サイトの評判から選ばれたものが<a href="http://www.geeklog.jp/">Geeklog</a>。ガイドブック「<a href="http://www.amazon.co.jp/gp/redirect.html?ie=UTF8&location=http%3A%2F%2Fwww.amazon.co.jp%2F%25E7%2584%25A1%25E5%2584%259FCMS-Geeklog%25E5%25B0%258E%25E5%2585%25A5%25E3%2582%25AC%25E3%2582%25A4%25E3%2583%2589-Geeklog-Japanese%2Fdp%2F4774130494%3Fie%3DUTF8%26s%3Dbooks%26qid%3D1181818208%26sr%3D8-1&tag=gradusadparna-22&linkCode=ur2&camp=247&creative=1211">Geeklog導入ガイド</a><img src="http://www.assoc-amazon.jp/e/ir?t=gradusadparna-22&amp;l=ur2&amp;o=9" width="1" height="1" border="0" alt="" style="border:none !important; margin:0px !important;" />(写真左)」も出版されて徐々に認知されてきているCMSである。]]>
      Geeklogのオフィシャルサイトが、XOOPSとGeeklogを比較していて、インストールの簡単さではXOOPSに軍配をあげているが、そのとおりインストールまでは少しやっかいだった。XOOPSと違って、回答したパッケージを公開領域と非公開領域に分けてアップロードしたり、インストーラらしきものがあまり親切でなくてphpファイルを開けていじらなきゃならなかったり。もしWebプログラミング初心者だったら厳しいんじゃないかなぁ。ともかくも、そんな作業をこなして、データベースにテーブルを作成(この作業はインストーラがやってくれる)したら、インストール作業は終了！XOOPSよりも手間だったが、充分許容範囲かな。

しかし今回Geeklogを選んだ一番の理由はやはり動作の軽さなわけで、早速どんなスピードで表示されるかチェックしてみる。インストールしたてでコンテンツの全くないサイトではあるが、軽い軽い。XOOPSの半分か1/3ぐらいの速さでページが読み込まれる気がする。デフォルトで搭載されている機能も、記事投稿、アンケート、ユーザー管理、リンク集…などXOOPSに遜色ない。しかも素晴らしいことに、携帯からの投稿なども可能らしい。いいね、Geeklog！

ただプラグインの豊富さでは、GeeklogはXOOPSに勝ち目はないらしい。プラグインについては、現時点でも、おそらく2年前に私がXOOPSを使用していたころにすら負けそうである。でもまぁ、プラグインなんてその気になれば自分で開発すればいいわけですから。重いCMSの構造見直して軽くするよりはずっと楽勝でしょう。

そんなことでやっぱり初心者にはXOOPSかなと思いますが(本もいっぱい出てるし)、私としてはGeeklog選んで間違いじゃなかったなと。どんなサイトができてくるかはお楽しみ、請うご期待。慣れないCMSのスクリプト見るのはなかなか骨の折れる作業ですが…でも急いでつくります♪
   </content>
</entry>
<entry>
   <title>simpleXML</title>
   <link rel="alternate" type="text/html" href="http://it.senrenja.net/2007/04/simple_load_xml.html" />
   <id>tag:senrenja.s266.xrea.com,2007:/it.senrenja.net//2.6</id>
   
   <published>2007-04-29T08:07:50Z</published>
   <updated>2007-04-29T09:42:59Z</updated>
   
   <summary>php5からはxmlの処理が簡単になった。ブログ等から吐き出されるxmlファイル...</summary>
   <author>
      <name>senrenja</name>
      
   </author>
         <category term="simpleXML" scheme="http://www.sixapart.com/ns/types#category" />
   
   
   <content type="html" xml:lang="ja" xml:base="http://it.senrenja.net/">
      php5からはxmlの処理が簡単になった。ブログ等から吐き出されるxmlファイルを処理するのも楽勝である。以下に、RSSを処理して記事を新着順に書き出すスクリプトを記す。
      <![CDATA[<blockquote>
&lt;?php

//まず最初にsimplexml_load_file関数を用いてxml文書をパース
$xml=simplexml_load_file("RSSのURL");

//ブログタイトルを出力 h4タグで囲む ブログタイトル不要ならコメントアウト
print "&lt;h4&gt;".$xml-&gt;channel-&gt;title."&lt;/h4&gt;";

//テーブル開始タグ
print "&lt;table&gt;";

//記事のタイトルを繰り返し出力 テーブルで表示
//投稿日(pubDate)をY.m.d形式にて表示するためにdate関数とstrtotime関数で変換
foreach($xml-&gt;channel-&gt;item as $item){
	print "&lt;tr&gt;&lt;td&gt;".date("Y.m.d",strtotime($item-&gt;pubDate))."&lt;/td&gt;&lt;td&gt;&lt;a href=\"".$item-&gt;link."\"&gt;".$item-&gt;title."&lt;/a&gt;&lt;/td&gt;&lt;/tr&gt;";
}

//テーブル終了タグ
print "&lt;/table&gt;";

?&gt;
</blockquote>

当たり前の話ですが、RSSではなくて、RDFとかATOMを使用するときはXMLのツリー構造が変わってくるので、上のスクリプトは利用できません。あしからず。]]>
   </content>
</entry>
<entry>
   <title>プログラマーな日々を綴ります</title>
   <link rel="alternate" type="text/html" href="http://it.senrenja.net/2007/04/post.html" />
   <id>tag:senrenja.s266.xrea.com,2007:/it.senrenja.net//2.2</id>
   
   <published>2007-04-24T15:57:56Z</published>
   <updated>2007-04-24T16:29:11Z</updated>
   
   <summary>ホームページを運用し始めてもう4年。 本格的にプログラミングを初めて2年。 プロ...</summary>
   <author>
      <name>senrenja</name>
      
   </author>
   
   
   <content type="html" xml:lang="ja" xml:base="http://it.senrenja.net/">
      ホームページを運用し始めてもう4年。
本格的にプログラミングを初めて2年。
プログラマーが本職ではないけれど
Webで何かを綴るには充分な所まで
達してきているかと思います。

作成したプログラムを公開したり
プログラミングする上でのメモを記したり
そんなことをぼちぼちとこのブログで。

html,javascript,php(smarty含む),vba,flash,actionscript
...ぐらいについて書いていきます。

どうぞよろしく。
      
   </content>
</entry>

</feed>
