<?xml version="1.0" encoding="UTF-8" ?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ja">
<title>スイナシア(XOOPS)</title>
<subtitle>「XOOPS」なエントリー</subtitle>
<link rel="alternate" type="text/html" href="http://suin.asia/tag/XOOPS"/>
<link rel="self" type="application/atom+xml" href="http://suin.asia/feed/atom/tag/XOOPS"/>
<author>
<name>suin</name>
</author>
<updated>2010-07-31T10:11:04Z</updated>
<id>http://example.com/atom1.xml</id>
<entry>
<title>CMS Theme Finderの発表します！</title>
<link href="http://suin.asia/2010/07/18/saturday_labo_cms_theme_finder"/>
<summary>CMS Theme Finderについて発表をすることになったのでお知らせします。</summary>
<published>2010-07-18T04:09:45Z</published>
<updated>2010-07-18T03:57:53Z</updated>
<id>http://suin.asia/2010/07/18/saturday_labo_cms_theme_finder</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="CmsThemeFinder" label="CmsThemeFinder" scheme="http://suin.asia/tag/CmsThemeFinder" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p>CMS Theme Finderについて発表をすることになったのでお知らせします。無料ですので、ぜひ聞きに来てください。</p>
<p>日時：7月24日（土曜）17:00〜</p>
<p>場所：株式会社RYUS　東京都千代田区神田須田町2-15 KSYビル4F</p>
<p>発表者：わたくしSuin</p>
<p>内容（予定）：</p>
<ul>
<li>CMS Theme Finderとは？</li>
<li>CMS Theme Finderの誕生背景</li>
<li>CMS Theme Finderを使ったXOOPS Cube用テーマの《画期的な》探し方</li>
<li>CMS Theme Finderの機能紹介</li>
<li>CMS Theme Finderの今後の展開</li>
</ul>
<p>発表時間：30分</p>
<p>発表資料：パワーポイントのスライドをプロジェクターで投影します</p>
<p>-----------------------------</p>
<p>7月24日（土曜）17時より当社ミーティングスペースにて、第8回XOOPS Cubeサタデーラボを開催いたします。</p>
<p>今回のゲストスピーカーは下記の方達です。</p>
<p>　○株式会社RYUS suin</p>
<p>弊社のsuinは、CMS Theme Finderの紹介とCMS Theme Finderを使ったXOOPS Cubeテーマの探し方について話します。</p>
<p>　○日本ピー・アイ株式会社 中畑氏</p>
<p>個人のサイトでXOOPSを利用されている中畑氏には、照明のサイトをつくって自分がやりたいとおもっていたこと。その方法がxoopsとの出会いによって実現できたこと。実際の運用している状況の紹介。今、できていないこと。将来的にしたいこと、現状の問題点。などのことを話して頂きます。</p>
<p>　○kudok氏</p>
<p>文系のためのXOOPS入門、XOOPS Cube Legacy カスタマイズ 文系出張所を運営されているkudok氏には、「コンテンツホルダーの立場からXOOPSの良さを語る＋訪問者との安定したコミュニケーションを保つための、カスタマイズの取捨選択」という内容で話して頂きます。</p>
<p>7/06 16:15 追記
3人目のスピーカーとして、kudok氏が参加されることになりました！</p>
<p>■XOOPS Cubeサタデーラボとは
XOOPS Cube サタデーラボは、以前行われていた、Cubeナイト、CMSナイト同様に、勉強会+懇親会という形で、これから毎月第4土曜日に開催予定のゆるーい勉強会です（かっちりしたセミナーをご希望の方は参加をご遠慮ください）</p>
<p>■会場
当社ミーティングスペース
※当社オフィスは2009年11月13日に下記所在地に移転しました。お間違えの無いようにお願いします。</p>
<p>〒101-0041　東京都千代田区神田須田町2-15 KSYビル4F (地図)
地図の画像右側にある工事中の建物がKSYビルとなります
当日はエレベータホールの扉が閉まっておりますので、1階のインターフォンで「401」を呼び出して下さい</p>
<p>■受付開始16時半
会場での受け付け開始は16時半から17時です。</p>
<p>■勉強会の部（17時開始。参加費無料）
・ミニセッションを3つぐらい行う予定です。
・時間は、17時開始、2時間程度を予定しています。</p>
<p>■懇親会の部（勉強会の部終了後開始。懇親会費3,000円）
・19時ごろ開始予定。2～3時間程度の予定です。
※懇親会費は当日受付でお支払いください。</p>
<p>■参加登録のお願い
会場の都合で15人程度までしか参加できませんので、人数把握のために参加申し込みをお願いします。</p>
<p>■お願い
今後のサタデーラボで聞いてみたい発表・スピーカー、もしくは自分が発表してみたい等ありましたら、是非参加申し込み時にコメント欄に記入をお願い致します。</p>
<p>2010-07-24 (土) 7月24日(土) 第8回XOOPS Cubeサタデーラボ開催</p>
<p><a href="https://ryus.co.jp/modules/eguide/event.php?eid=14">https://ryus.co.jp/modules/eguide/event.php?eid=14</a></p>]]>
</content>
</entry>
<entry>
<title>CMS Theme Finder : 不評の「自分のサイトで見る」機能を改良してみた</title>
<link href="http://suin.asia/2010/05/11/preview_at_your_xoops_cube"/>
<summary>自分のサイトでテーマのプレビューを見られる点で評価をいただき幸いです。しかし、中にはうまく使えなかった方がいらっしゃるようで、残念でもあります。うまく使えなかった原因は様</summary>
<published>2010-05-11T07:26:33Z</published>
<updated>2010-05-11T07:20:01Z</updated>
<id>http://suin.asia/2010/05/11/preview_at_your_xoops_cube</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="CmsThemeFinder" label="CmsThemeFinder" scheme="http://suin.asia/tag/CmsThemeFinder" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p class="photo"><a href="http://picasaweb.google.com/lh/photo/V6Ci6uvzgKJeIezuQGxU0g?feat=embedwebsite"><img src="http://lh5.ggpht.com/_dG0BBWAhWis/S-Aoq9JlGLI/AAAAAAAABQE/mUuSd5Pyt6Q/s800/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%202.png" /></a></p>

<p>以前、紹介した<a href="http://suin.asia/2010/05/04/preview_at_your_xoops_cube">「自分のサイトで見る」機能</a>ですが、自分のサイトでテーマのプレビューを見られる点で評価をいただき幸いです。しかし、中にはうまく使えなかった方がいらっしゃるようで、残念でもあります。うまく使えなかった原因は様々ですが、その根本的な原因は、あまりシンプルじゃなかった点と、それゆえ説明不足になっていた点が考えられました。そこで、「自分のサイトで見る」機能をシンプルに改善し、できるだけ分かりやすく説明するよう努力してみました。</p>

<p>改良版は、前よりましだと思いますが、私の方では十分にテストできていません。サイトによって状況が環境が変わってくると思います。なので、これをお試しになってくださった方からのコメントや質問をいただければ幸いです。</p>

<h3>よりシンプルに、より高機能に、よりセキュアに</h3>

<ul>
<li>設置するファイルが多い → プリロード1個だけになりました</li>
<li>プレビューURLがわかりにくい → XOOPSのURLを入力するだけ</li>
<li>閉鎖中のサイトで使えない → 使えるようにしました</li>
<li>トップページしか見れない → 他のページも見られるようにしました</li>
<li>ユーザごとにトークンを発行することで、前よりセキュアになりました</li>
</ul>

<h3>プリロード設置側のシステム要件</h3>

<ul>
<li>XOOPS Cube Legacy 2.1 以上</li>
<li>XOOPS Cubeがオンライン上にある(イントラネット上などは利用できません。)</li>
<li>PHP5 以上</li>
</ul>

<h3>セットアップ手順(改訂)</h3>

<ol start="0">
<li>CMS Theme Finderのアカウントをお持ちでない場合、<a href="http://cmsthemefinder.com/register.php">新規登録</a>を済ませます</li>
<li><a href="http://cmsthemefinder.com/modules/lica/index.php?controller=user">個人設定</a>から、プリロードをダウンロードします
<p class="photo">
<a href="http://picasaweb.google.co.jp/lh/photo/VPq0kLzo83PMFPVeB_XUNA?feat=embedwebsite"><img src="http://lh6.ggpht.com/_dG0BBWAhWis/S-kEie3npXI/AAAAAAAABRQ/nJX-ONyQn4Q/s400/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%201.png" /></a>
</p>
</li>
<li>ダウンロードしたプリロードをあなたのXOOPSCubeに設置します
<p class="photo">
<a href="http://picasaweb.google.co.jp/lh/photo/_viA1Pse36zgtEpRZB2nPQ?feat=embedwebsite"><img src="http://lh6.ggpht.com/_dG0BBWAhWis/S-kEiVPnQTI/AAAAAAAABRU/Gs2MXHhN9JE/s800/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%204.png" /></a>
</p>
</li>
<li>CMS Theme Finderにログインします</li>
<li><a href="http://cmsthemefinder.com/modules/lica/index.php?controller=user">個人設定</a>の「プレビューURL」に、あなたのXOOPSCubeのトップページのURLを入力します
<p class="photo">
<a href="http://picasaweb.google.co.jp/lh/photo/p3F8LfA8P0U2ZWu8Vav5EA?feat=embedwebsite"><img src="http://lh4.ggpht.com/_dG0BBWAhWis/S-kEit7cqqI/AAAAAAAABRY/MghdHl2kHIM/s400/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%203.png" /></a>
</p>
</li>
<li>セットアップ完了です</li>
</ol>

<h3>この改善版へのアップデート方法</h3>

<p><a href="http://suin.asia/2010/05/04/preview_at_your_xoops_cube">以前紹介した記事</a>で、既に「自分のサイトで見る」機能をご利用の方は、以下の手順でアップデートしてください。</p>

<ol>
<li>あなたのサイトに設置した古いプリロード(/preload/CmsThemeFinderPreviewer.class.php)とテーマ(/themes/ctfp_theme/)を削除します。</li>
<li><a href="http://cmsthemefinder.com/modules/lica/index.php?controller=user">個人設定</a>から、プリロードをダウンロードします</li>
<li>プリロードをあなたのXOOPSCubeに設置します</li>
<li>CMS Theme Finderにログインします</li>
<li><a href="http://cmsthemefinder.com/modules/lica/index.php?controller=user">個人設定</a>の「プレビューURL」に、あなたのXOOPSCubeのトップページのURLを入力します</li>
<li>アップデート完了です</li>
</ol>]]>
</content>
</entry>
<entry>
<title>CMS Theme Finderの新機能 : あなたのXOOPS Cubeでテーマをプレビューを図解</title>
<link href="http://suin.asia/2010/05/05/cms_theme_finder_previewer"/>
<summary>有償テーマ作者は、プレビュー機能で対価を受け取ることなく、ユーザ側にテーマが渡ってしまうのではないかと危惧するかもしれません。Previewerの仕組みは、テーマの情報をユーザにまる</summary>
<published>2010-05-05T13:20:44Z</published>
<updated>2010-05-05T13:01:15Z</updated>
<id>http://suin.asia/2010/05/05/cms_theme_finder_previewer</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="CmsThemeFinder" label="CmsThemeFinder" scheme="http://suin.asia/tag/CmsThemeFinder" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<h3>今までのXOOPS Cubeテーマの試し方</h3>
<p class="photo"><a href="http://picasaweb.google.com/lh/photo/0MtwElJ3SvHYn6ptRJIbMA?feat=embedwebsite"><img src="http://lh4.ggpht.com/_dG0BBWAhWis/S-Fr59HzWaI/AAAAAAAABQo/prsF7tRKAR0/s400/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A.jpg" /></a></p>
<h3>CMS Theme Finder Previewerを使ったテーマの試し方</h3>
<p class="photo"><a href="http://picasaweb.google.com/lh/photo/wUKHURHy_53NfbDmXK3o7g?feat=embedwebsite"><img src="http://lh5.ggpht.com/_dG0BBWAhWis/S-Fr6LkjYdI/AAAAAAAABQs/lIK0utGUB2g/s400/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A%EF%BC%92.jpg" /></a></p>
<p>CMS Theme Finder Previewerを導入してテーマを探すのと、そうでないのでは手間のかかりかたが全く異なります。</p>
<h3>有償テーマの売り込みも視野に入れて</h3>
<p>テーマは、XOOPSにおいて有償の文化が、モジュールと比べて発達しています。オープンソースの世界で金儲けするとなると、悪魔に魂を売るようなことだと避難する人がいます。しかし、私はそう思いません。オープンソースは無償である義務はありませんし、対価を支払うことで質の高いCMSの文化を作ることも可能だと考えているからです。したがって、CMS Theme Finderでは、有償テーマを歓迎し、Previewerが有償テーマの発表の場になればと思っています。</p>
<p>ユーザが有償テーマを選択する場合、ダウンロードするたびにコストがかかることがあります。一方、Previewerを使った場合、ダウンロードの必要がないのでコストをかけることなくテーマを自分のサイトで試すことができる利点があります。テーマ作者は今後、CMS Theme Finderで有償テーマのプレビューを許可することで、ユーザにテーマを試してもらえることになり、有償テーマの売り込みがより活発化できるのではと考えています。</p>
<h3>CMS Theme Finder Previewerの仕組み</h3>
<p class="photo"><a href="http://picasaweb.google.com/lh/photo/usr8dKuqu1vX-8JCjVfO1w?feat=embedwebsite"><img src="http://lh5.ggpht.com/_dG0BBWAhWis/S-Fr6MX7bdI/AAAAAAAABQw/u690hI3ms7E/s400/%E5%90%8D%E7%A7%B0%E6%9C%AA%E8%A8%AD%E5%AE%9A%EF%BC%93.jpg" /></a></p>
<p>有償テーマ作者は、プレビュー機能で対価を受け取ることなく、ユーザ側にテーマが渡ってしまうのではないかと危惧するかもしれません。Previewerの仕組みは、テーマの情報をユーザにまるまる投げるのではなく、テーマのプレビューに必要な情報をユーザのXOOPS Cube Legacyから提供してもらい、CMS Theme Finder上でテーマのプレビューを生成する仕組みをとりました。なので、有償テーマを含め、無償再配布不可のテーマの情報がCMS Theme Finderからユーザに流れることはありません。この仕組は、ユーザにとっても利があり、テーマ作者にとっても利があると考えています。</p>]]>
</content>
</entry>
<entry>
<title>CMS Theme Finderの新機能 : あなたのXOOPS Cubeでテーマをプレビュー</title>
<link href="http://suin.asia/2010/05/04/preview_at_your_xoops_cube"/>
<summary>CMS Theme Finderでは、あなたのXOOPS Cubeでテーマをプレビューできる「自分のサイトで見る」機能を提供しています。この機能は、テーマをダウンロードしたり、自分のサーバーにアップロード</summary>
<published>2010-05-11T07:30:24Z</published>
<updated>2010-05-04T14:08:55Z</updated>
<id>http://suin.asia/2010/05/04/preview_at_your_xoops_cube</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="CmsThemeFinder" label="CmsThemeFinder" scheme="http://suin.asia/tag/CmsThemeFinder" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p>CMS Theme Finderでは、テーマをプレビューする機能があります。ユーザはテーマが実際にどのような見た目になるのか知ることができます。そして、そのテーマが気に入ったら、ダウンロードすることができます。ところが、いざ自分のサイトに適用してみると、「思ったようなデザインと違った」ということもしばしばあります。</p>

<p>そこで、CMS Theme Finderでは、あなたのXOOPS Cubeでテーマをプレビューできる「自分のサイトで見る」機能を提供しています。この機能は、テーマをダウンロードしたり、自分のサーバーにアップロードしたりする手間がありません。ただ、「自分のサイトで見る」を１回クリックするだけで、あなたのXOOPS Cubeにテーマを適用した結果を見ることができます。</p>

<p class="photo"><a href="http://picasaweb.google.com/lh/photo/V6Ci6uvzgKJeIezuQGxU0g?feat=embedwebsite"><img src="http://lh5.ggpht.com/_dG0BBWAhWis/S-Aoq9JlGLI/AAAAAAAABQE/mUuSd5Pyt6Q/s800/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%202.png" /></a></p>


<p style="color:red;">以下の情報は古いです。<a href="http://suin.asia/2010/05/11/preview_at_your_xoops_cube">CMS Theme Finder : 不評の「自分のサイトで見る」機能を改良してみた</a>を御覧下さい。[追記 2010/05/11]</p>

<h3>利用要件</h3>

<ul>
<li>XOOPS Cube Legacy 2.1 以上</li>
<li>XOOPS Cubeがオンライン上にある(イントラネット上などは利用できません。)</li>
</ul>

<h3>セットアップ</h3>

<p>「自分のサイトで見る」機能を使うには、セットアップをしていただく必要があります。決して難しいものでも、手間のかかるものでもありませんので、ご安心ください。</p>

<table width="100%" style="border: 1px solid silver;">

<tr>
<td colspan="2">1. <a href="http://dl.dropbox.com/u/949822/Downloads/cmsthemefinder_previewer.1.0.0.zip">CMS Theme Finder Previewer</a>をダウンロードし、解凍します。</td>
</tr>

<tr>
<td colspan="2">2. 展開されたファイルの中のpreloadとthemesをあなたのXOOPS Cubeにアップロードします。
<p class="photo"><a href="http://picasaweb.google.com/lh/photo/uBbCgaoTZZUjT9jgw0XI3A?feat=embedwebsite"><img src="http://lh5.ggpht.com/_dG0BBWAhWis/S-AorDsk8aI/AAAAAAAABQI/u5PxIUoGfic/s800/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%203.png" /></a></p>
</td>
</tr>

<tr>
<td colspan="2">3. CMS Theme Finderのアカウントを持っている</td>
</tr>

<tr>
<td style="text-align:center; width:50%; background: #b4dcff;">はい<br />↓</td>
<td style="text-align:center; width:50%; background: #ffbcc2;">いいえ<br /><a href="http://cmsthemefinder.com/register.php">新規アカウント登録</a>してください。</td>
</tr>

<tr>
<td colspan="2">4. <a href="http://cmsthemefinder.com/modules/lica/index.php?controller=user">個人設定</a>で「プレビューURL」を設定します。
<p class="photo"><a href="http://picasaweb.google.com/lh/photo/WYhhNqzdtU5VkA0WktZlRQ?feat=embedwebsite"><img src="http://lh6.ggpht.com/_dG0BBWAhWis/S-Aoq2M-cgI/AAAAAAAABQA/a62A8JERWQ4/s400/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%201.png" /></a></p>
<div style="background: #ffbcc2; margin: 5px 5px 5px 40px; padding: 1em;">
プレビューURLは、あなたのXOOPS CubeのURLの末尾に「?ctfp」をつけたものになります。<br />
たとえば、http://xoops.example.com/というURLで運用中のXOOPS Cubeであれば、http://xoops.example.com/?ctfpのように入力します。
</div>
</td>
</tr>

<tr>
<td colspan="2">5. セットアップ完了です。</td>
</tr>

</table>]]>
</content>
</entry>
<entry>
<title>CMS Theme Finder テーマまとめサイト</title>
<link href="http://suin.asia/2010/05/02/cms_theme_finder"/>
<summary>この度、XOOPS・XOOPS Cube Legacyのテーマ情報をまとめるサイトを立ち上げました。CMS Theme Finderというサイトです。</summary>
<published>2010-05-01T17:08:30Z</published>
<updated>2010-05-01T17:06:43Z</updated>
<id>http://suin.asia/2010/05/02/cms_theme_finder</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p>この度、XOOPS・XOOPS Cube Legacyのテーマ情報をまとめるサイトを立ち上げました。CMS Theme Finderというサイトです。</p>
<p>XOOPS、XCLのテーマをいざ探そうと思うと、テーマ作者さんのサイトごとに見に行かなければならず、サイトによってはテーマのプレビューが見れない、見づらいところもあります。また、テーマの情報をまとめているサイトもありますが、視覚的に探すという点であまり使い勝手が良くないなどの問題がありました。</p>
<p>そこで、テーマを総括的・視覚的に探すことができるサービスとしてCMS Theme Finderを作りました。</p>
<p>XOOPSを始める人は、必ずと言っていいほどテーマを探しますので、テーマが探しやすければXOOPSを選択する人や、XOOPSのコミュニティに少しながら貢献できると考えています。</p>
<p>今後は検索機能などを追加し、視覚的に探せる仕組みを作り上げていく計画です。今のところ、色でテーマを絞り込めるような機能を考えています</p>
<p>サイト名はCMS Theme Finderですが、今登録されているテーマはすべてXOOPS、XCLのものです。今後（いつになるか分かりませんが^^;;）、ImpressCMSなどXOOPSの親戚から、WordPress、Concrete5などのテーマも追加していきます。テーマは比較的移植が容易ですし、CMSを超えてテーマを探せるメリットは大きいものになると思います。</p>
<p>CMS Theme Finder</p>
<p><a href="http://cmsthemefinder.com/">http://cmsthemefinder.com/</a></p>]]>
</content>
</entry>
<entry>
<title>Google Analyticsのトラッキングコードを追加するプリロード</title>
<link href="http://suin.asia/2010/05/02/google_analytics_preload"/>
<summary>Google Analyticsは無料で利用できる高機能なアクセス解析サービスです。利用する場合は、サイトにトラッキングコードを追加します。XOOPS Cubeで、トラッキングコードを追加するには、普通は</summary>
<published>2010-05-01T16:24:12Z</published>
<updated>2010-05-01T16:17:39Z</updated>
<id>http://suin.asia/2010/05/02/google_analytics_preload</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="プリロード" label="プリロード" scheme="http://suin.asia/tag/%E3%83%97%E3%83%AA%E3%83%AD%E3%83%BC%E3%83%89" />
<category term="GoogleAnalytics" label="GoogleAnalytics" scheme="http://suin.asia/tag/GoogleAnalytics" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p>Google Analyticsは無料で利用できる高機能なアクセス解析サービスです。利用する場合は、サイトにトラッキングコードを追加します。XOOPS Cubeで、トラッキングコードを追加するには、普通はテーマにトラッキングコードを書き込んでしまうのが早いです。しかし、テーマを変更することが想定される場合は、プリロードにしておくと便利です。テーマが変わってもトラッキングコードが抜ける心配がないからです。</p>

<p>下のプリロードはGoogleAnalytics.class.phpというファイル名で保存します。トラッキングコードを所定の場所にコピペするだけです。Google Analytics以外に、HTMLのヘッダに貼りつけたいコードがある時にも、応用できると思います。</p>

<pre class="php" name="code">
&lt;?php

class GoogleAnalytics extends XCube_ActionFilter
{
	public function preBlockFilter()
	{
		$this-&gt;mRoot-&gt;mDelegateManager-&gt;add('XoopsTpl.New', array(&amp;$this, 'hook'));
	}

	public function hook(&amp;$xoopsTpl)
	{
		$trackingCode = &lt;&lt;&lt; DOC_END
//トラッキングコードをここに貼付け。
DOC_END;

		$xoopsModuleHeader = $xoopsTpl-&gt;get_template_vars('xoops_module_header');
		$xoopsTpl-&gt;assign('xoops_module_header', $xoopsModuleHeader.$trackingCode);
	}
}

?&gt;
</pre>]]>
</content>
</entry>
<entry>
<title>DynamicThemeChanger 1.0.0 URLで動的にテーマを切り替えるプリロード</title>
<link href="http://suin.asia/2010/04/21/dynamic_theme_changer_100"/>
<summary>DynamicThemeChangerはURLで指定したテーマに切り替えるプリロードです。テーマ配布サイトがテーマのプレビューを示すことを想定して作りました。プリロードをアップロードすることで、URLで?t</summary>
<published>2010-04-21T14:48:50Z</published>
<updated>2010-04-21T14:43:47Z</updated>
<id>http://suin.asia/2010/04/21/dynamic_theme_changer_100</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="プリロード" label="プリロード" scheme="http://suin.asia/tag/%E3%83%97%E3%83%AA%E3%83%AD%E3%83%BC%E3%83%89" />
<category term="ダウンロード" label="ダウンロード" scheme="http://suin.asia/tag/%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89" />
<category term="DynamicThemeChanger" label="DynamicThemeChanger" scheme="http://suin.asia/tag/DynamicThemeChanger" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<a href="http://suin-xoops.googlecode.com/files/DynamicThemeChanger.1.0.0.zip" class="download">ダウンロード</a>
<p>DynamicThemeChangerはURLで指定したテーマに切り替えるプリロードです。テーマ配布サイトがテーマのプレビューを示すことを想定して作りました。プリロードをアップロードすることで、URLで?theme={テーマディレクトリ名}の形でテーマを指定すると、そのテーマに切り替わります。</p>]]>
</content>
</entry>
<entry>
<title>XOOPSがUTF-8に統一するメリット・デメリット</title>
<link href="http://suin.asia/2010/04/06/xoops_utf-8"/>
<summary>XOOPSがUTF-8に統一するメリット・デメリット</summary>
<published>2010-04-07T15:30:25Z</published>
<updated>2010-04-06T03:43:39Z</updated>
<id>http://suin.asia/2010/04/06/xoops_utf-8</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<h3>開発者のメリット</h3>
<ul>
<li>日本語の場合、ja-utf8とjapanese(EUC-JP)の２つの言語ファイルを用意する手間が省ける</li>
<li>AjaxはデフォルトがUTF-8なので、Ajaxの開発が加速する</li>
<li>外部との通信規格(RSS、XML、APIなど)で、UTF-8がデフォルトだったりする</li>
<li>mb_convert_encodingの失敗などの不安が減る</li>
<li>様々な規格がUTF-8に移行しつつある(XHTMLはデフォルトでUTF-8か16)</li>
<li>テーマをUTF-8で作って、さくっと全世界に向けてリリースできる</li>
</ul>
<h3>サイトオーナのメリット</h3>
<ul>
<li>非アルファベット圏の多言語対応が容易になる<br />英語と日本語、ロシア語と日本語であればEUC-JPでも対応出来ないことはない。しかし、日本語と韓国語・中国語のようなケースではUTF-8のほうが断然やりやすい</li>
<li>ひとつのウェブサイトに多言語を埋込みやすくなる<br />ひとつのフォーラムに、日本語のフォーラム、中国語のフォーラムを作ることができる。</li>
</ul>
<h3>デメリット</h3>
<ul>
<li>EUC-JPに比べUTF-8は漢字コードのバイト数が1.5倍になる。<br />漢字コード100MBの転送量が150MBになる。</li>
<li>古いブラウザ、古いOS、古いエディタを切り捨ててしまう</li>
<li><s>携帯電話に対応出来ない</s></li>
<li>稼働中のサイトの場合、EUC-JPからUTF-8に移行するのが手間</li>
</ul>
<p>こんなもんかな？</p>]]>
</content>
</entry>
<entry>
<title>WhiteoutRescue 真っ白画面解決支援プリロード</title>
<link href="http://suin.asia/2010/03/12/whiteoutrescue_preload"/>
<summary>WhiteoutRescueプリロードは、ホワイトデイに「真っ白」画面を出さないためのプリロードです。ホワイトデイに真っ白画面に出くわしたサイトオーナーがこのプリロードをアップロードします</summary>
<published>2010-03-11T15:59:48Z</published>
<updated>2010-03-11T15:19:16Z</updated>
<id>http://suin.asia/2010/03/12/whiteoutrescue_preload</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="ダウンロード" label="ダウンロード" scheme="http://suin.asia/tag/%E3%83%80%E3%82%A6%E3%83%B3%E3%83%AD%E3%83%BC%E3%83%89" />
<category term="プリロード" label="プリロード" scheme="http://suin.asia/tag/%E3%83%97%E3%83%AA%E3%83%AD%E3%83%BC%E3%83%89" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p>
<a href="http://dl.dropbox.com/u/949822/Downloads/WhiteoutRescue_1.0.zip" class="download">WhiteoutRescue_1.0.zip</a>
ホワイトデイ(3月14日)は、一般には男子が女子にクッキーをあげる日ですが、XOOPSユーザにとっては厄日だそうです。XOOPSオーナーが最も嫌うのは、エラーなどでXOOPSの画面が「真っ白」になることです。ホワイトデイの「ホワイト」が「真っ白」を連想させることもあり、ホワイトデイに「真っ白」画面が出ると、その年のXOOPS運が大殺界であることを意味するそうで、縁担ぎのために3月14日の1日だけXOOPSを止めたり、熱心なXOOPS関係のデベロッパーの中にはこの日だけ開発を休んだりするそうです。</p>

<p>WhiteoutRescueプリロードは、ホワイトデイに「真っ白」画面を出さないためのプリロードです。ホワイトデイに真っ白画面に出くわしたサイトオーナーがこのプリロードをアップロードします。そして、真っ白画面のページにアクセスすると、黒背景を基調としたデバッグページが現れます。サイトオーナーはそのデバッグ情報をたよりに真っ白画面を解消します。このように、真っ白画面を直すことで、厄払いの意味になり、その年のXOOPS運が大安になると言われています。</p>

<p class="photo"><a href="http://picasaweb.google.co.jp/lh/photo/8WxTNouyTtprVY2q8vpKJQ?feat=embedwebsite"><img src="http://lh5.ggpht.com/_dG0BBWAhWis/S5kJmrP1wtI/AAAAAAAABJ8/5_DyGvIV9vM/s400/%E3%83%94%E3%82%AF%E3%83%81%E3%83%A3%201.png" /></a></p>

<h3>動作要件</h3>
<ul>
<li>XOOPS Cube Legacy 2.x</li>
<li>PHP 5.1 (5.2からかも)</li>
<li>UTF-8環境(EUC-JPでも動くことは動く)</li>
</ul>

<h3>WhiteoutRescueプリロードの使い方</h3>

<p>XOOPSオーナーに伝わるWhiteoutRescueプリロードの使い方は以下のようです。</p>

<ol>
<li>WhiteoutRescue.class.phpを/preloadにアップロードする</li>
<li>真っ白のページにアクセスする</li>
<li>表示されたデバッグ情報をもとに問題を解決する</li>
<li>使い終わったら、WhiteoutRescue.class.phpを削除する</li>
</ol>

<p>なお、使い終わってもWhiteoutRescueプリロードを削除しないでいると、XOOPSのセキュリティやパフォーマンスが低下し、XOOPSが白い悪魔に取り憑かれるそうなので、必ず削除するようにしましょう。</p>

<p>WhiteoutRescueを使っても真っ白のままの場合、以下のことが考えられます。</p>
<ul>
<li>プリロード読み込み以前にXOOPSがこけてる</li>
<li>PHPのパースエラー（セミコロンがダブルコロンだ、など）この場合はPHPのエラーログを参照</li>
<li>サーバーの問題 (.htaccessの設定ミスなど)</li>
<li>そもそもXOOPS Cube Legacyじゃない</li>
<li>しかるべくして真っ白なページ</li>
</ul>

<h3>ライセンス</h3>
<p>GNU GPL2ライセンスです。動作無保証です。あなたは、GPL2の条件をみたせばこのプログラムを改変・頒布することができます。</p>

<h3>リポジトリ</h3>
<code>
svn checkout http://suin-xoops.googlecode.com/svn/trunk/WhiteoutRescue suin-xoops-read-only
</code>

<h3>[訂正 2010/03/12]</h3>
<p>XOOPSオーナーの間で、3月14日が厄日などの記述がありましたが、実際にはそんな習慣はないそうです。教えてくれたwhite_devilさんありがとうございます。</p>]]>
</content>
</entry>
<entry>
<title>SubversionでのPreloadの管理方法</title>
<link href="http://suin.asia/2010/03/11/how_to_manage_preloads_with_subversion"/>
<summary>Preloadをバージョン管理するとき私が行っている方法を紹介しようと思います。ディレクトリごとにバージョン管理する場合、開発中のプリロードを/preloadディレクトリにおいてしまうと、他</summary>
<published>2010-03-11T08:54:56Z</published>
<updated>2010-03-11T08:14:45Z</updated>
<id>http://suin.asia/2010/03/11/how_to_manage_preloads_with_subversion</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="プリロード" label="プリロード" scheme="http://suin.asia/tag/%E3%83%97%E3%83%AA%E3%83%AD%E3%83%BC%E3%83%89" />
<category term="開発" label="開発" scheme="http://suin.asia/tag/%E9%96%8B%E7%99%BA" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p>Preloadをバージョン管理する便利な方法を紹介しようと思います。ディレクトリごとにバージョン管理する場合、開発中のプリロードを/preloadディレクトリにおいてしまうと、他のプリロードまでバージョンされてしまいます。こういう場合では、/preloadにサブディレクトリを作って、そこでバージョン管理したほうが管理性が向上します。</p>
<p xml:lang="en">I will introduce you how to develop preloads with Subversion. If you put your preloads under /preload directory, it is difficult to manage the versions of its. Because, Subversion treats not only your preload but also the other ones. In such a case, you can make subdirectories under /preload. This way helps you to increase your manageability.</p>
<p>配布することを考えれば、サブディレクトリにLicense.txtやReadme.txtを置くといいでしょう。そうしておくと、svn -exportでプリロードの配布パッケージが簡単に生成できます。</p>
<p xml:lang="en">If you plan to distribute your preload, you may put License.txt or Readme.txt under the subdirectory. It is a smart way. You only have to command "svn -export" at the subdirectory when you distribute it.</p>

<h3>ディレクトリの構成方法</h3>

<pre>
/XOOPS_ROOT_PATH
	/preload
		/VersionedPreload.class.php (a)
		/VersionedPreload
			/.svn
			/VersionedPrelaod.class.php (b)
			/License.txt
			/Readme.txt
</pre>

<h3>VersionedPreload.class.php (a)のソース</h3>

<pre class="php" name="code">
&lt;?php

$file = basename(__FILE__);
$dir  = str_replace('.class.php', '', $file);

require $dir.'/'.$file;

?&gt;
</pre>

<p>(a)はただ、requireするだけです。（プロキシと言ったラインだろうか。）このサンプルソースはどんなプリロードにもそのまま流用できます。なぜなら、ファイル名を動的に取得しているからです。/preloadディレクトリに(a)をひとつ作っておけば、新しくプリロードを作る度に、コピーして名前を変更するだけでいいので便利です。</p>
<p xml:lang="en">The (a) only includes your preload. You can apply this sample to your any other preloads. Because, this sample get the file name dynamically. If you create the (a) once, you only have to copy and rename it, when you create a new preload. It is useful.</p>

<h3>VersionedPreload.class.php (b)のソース</h3>

<pre class="php" name="code">
&lt;?php
/**
 *
 * @package    Versioned Preload
 * @author     Foo Bar &lt;http://example.com/&gt;
 * @copyright  2010 Foo Bar
 * @license    http://www.gnu.org/licenses/gpl-2.0.html GNU GPL v2 or later
 *
 */

if ( !defined('XOOPS_ROOT_PATH') ) exit;

class VersionedPreload extends XCube_ActionFilter
{
	public function preBlockFilter()
	{
		$this-&gt;mRoot-&gt;mDelegateManager-&gt;add('Delegate.Name', array(__CLASS__, 'doSomething'));
	}

	public static funciton doSomething(&amp;$param)
	{
		// Do something here.
	}
}
?&gt;
</pre>

<p>(b)では、プリロードを作るときの普段どおりの書き方をするだけです。とくに変わったことをする必要もありません。</p>]]>
</content>
</entry>
<entry>
<title>XOOPS Cubeと他のCMSの用語対比</title>
<link href="http://suin.asia/2010/03/09/xoops_cube_terms_vs_other_cms"/>
<summary>XOOPS Cube Legacyでは、ブロックでPHPがかけるけど、Joolma!のモジュールのように配布はできない。XOOPS系では言語パッチは特に拡張機能というノリではない。</summary>
<published>2010-03-08T15:29:05Z</published>
<updated>2010-03-08T15:22:40Z</updated>
<id>http://suin.asia/2010/03/09/xoops_cube_terms_vs_other_cms</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="CMS" label="CMS" scheme="http://suin.asia/tag/CMS" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<table>
<tr>
<th>XOOPS Cube</th>
<th>Drupal</th>
<th>Joolma!</th>
</tr>
<tr>
<td>モジュール</td>
<td>モジュール</td>
<td>コンポーネント</td>
</tr>
<tr>
<td>ブロック</td>
<td>ブロック</td>
<td>モジュール</td>
</tr>
<tr>
<td>プリロード</td>
<td>?</td>
<td>プラグイン</td>
</tr>
<tr>
<td>言語</td>
<td>言語</td>
<td>言語</td>
</tr>
<tr>
<td>テーマ</td>
<td>テーマ</td>
<td>テンプレート</td>
</tr>
</table>

<p>XOOPS Cube Legacyでは、ブロックでPHPがかけるけど、Joolma!のモジュールのように配布はできない。XOOPS系では言語パッチは特に拡張機能というノリではない。</p>]]>
</content>
</entry>
<entry>
<title>XOOPSのモジュールはGPL2で配布しないといけない？</title>
<link href="http://suin.asia/2010/03/07/xoops_module_must_be_gpl2"/>
<summary>特殊なケースを覗いて、モジュールのライセンスはXOOPS2に引っ張られてGPL2にしなければならないようです。GPL2では、「プログラム」の派生物（二次的著作物）はGPL2でなければならないと定</summary>
<published>2010-03-07T07:15:05Z</published>
<updated>2010-03-06T16:44:23Z</updated>
<id>http://suin.asia/2010/03/07/xoops_module_must_be_gpl2</id>
<category term="XOOPS" label="XOOPS" scheme="http://suin.asia/tag/XOOPS" />
<category term="モジュール" label="モジュール" scheme="http://suin.asia/tag/%E3%83%A2%E3%82%B8%E3%83%A5%E3%83%BC%E3%83%AB" />
<category term="ライセンス" label="ライセンス" scheme="http://suin.asia/tag/%E3%83%A9%E3%82%A4%E3%82%BB%E3%83%B3%E3%82%B9" />
<category term="GPL" label="GPL" scheme="http://suin.asia/tag/GPL" />
<content type="html" xml:lang="ja" xml:base="http://suin.asia/tag/XOOPS">
<![CDATA[<p>XOOPSのモジュールでは、そのモジュールのライセンスを宣言する変数<code>$modversion['license']</code>があります。しかし、実質的には、XOOPSのモジュールが暗黙のうちにGPL2にライセンシングしています。</p>
<p>これは妙だな、と思って調べてみたら、特殊なケースを覗いて、モジュールのライセンスはXOOPS2に引っ張られてGPL2にしなければならないようです。GPL2では、「プログラム」の派生物（二次的著作物）はGPL2でなければならないと定めています。（GPL3でもだめ。）</p>
<p>いや、ちょっとまてよ。モジュールって別にXOOPSの派生物じゃないじゃん！と思ったのですが、これがどうもGPL2ではモジュールを派生物と捉えるのが妥当のようです。どうしてこうなるかというと、GPL2ではソースコードをつぎのように捉えているからです。</p>

<blockquote>
ある実行形式の著作物にとって完全なソースコード とは、それが含むモジュールすべてのソースコード全部に加え、関連するイン ターフェース定義ファイルのすべてとライブラリのコンパイルやインストール を制御するために使われるスクリプトをも加えたものを意味する。
<a href="http://www.opensource.jp/gpl/gpl.ja.html.euc-jp">GNU 一般公衆利用許諾契約書</a>
</blockquote>

<p>どういうことかというと、「実行時に読み込んでいるライブラリもそのプログラムの一部です」ということ。XOOPSのモジュールの場合、<code>require '../../mainfile.php';</code>を行うので、その時点でXOOPS2のGPL汚染が始まります。現にGPLのFAQで次のようなことが述べられています。</p>

<blockquote>
<p>ライブラリが(LGPLではなく)GPLの下で公開されている場合、そのライブラリを利用するプログラムにはGPLが適用されていなければならないのでしょうか?</p>

<p>はい。なぜなら、実際に実行されるプログラムはライブラリを含んでいるから です。</p>
<a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.ja.html#IfLibraryIsGPL">GNU GPLに関して良く聞かれる質問</a>
</blockquote>

<blockquote>
<p>GPLの下で公開されていたプログラムがプラグインを使うとして、プラグインのライセンスにはどのような条件がありますか?</p>
<p>それはプログラムがどのようにプラグインを呼び出すかに依ります。プログラ ムがforkやexecでプラグインを呼び出すならば、プラグインは別のプログラム であり、メインプログラムのライセンスはそれらにはなんの条件も課しません。</p>
<p>もしプログラムがプラグインと動的にリンクされており、お互いにファンクショ ンコールを使ってデータ構造を共有している場合、それらは単一のプログラム を形成していると見なされますので、プラグインはメインプログラムの拡張部 分として扱われなければなりません。すなわち、それらはGPLかGPLと矛盾しな いフリーソフトウェアライセンスの下で公開されなければならないということ です。</p>
<p>プログラムがプラグインと動的にリンクされているが、それらの間のコミュニ ケーションはいくつかのオプションとともにプラグインの「main」関数を呼び 出して返値を待つだけという場合は、境界線上で微妙なケースとなります。</p>
<a href="http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.ja.html#GPLAndPlugins">GNU GPLに関して良く聞かれる質問</a>
</blockquote>

<p>このFAQが意味するのは、モジュールがXOOPSのライブラリ（例えば、XoopsTpl, XoopsObject, XoopsUserなど）を使う限り、別個に配布しようが、モジュールはGPL2になるということです。動的にライブラリを使うか場合、GPLは感染しない、なんという主張もありましたが、実際にライブラリを使うのに動的か静的かでGPLの制約が変わるというのも変な話です。</p>

<p>しかし、まったくXOOPSのライブラリに依存せず、なおかつ、XOOPSなしでも完全な実行ができるモジュールであれば、GPL2を名乗る必要もありません。それはGPLのFAQを隅々読みつくせば、このことを暗示する記述が見られます。しかし、そのようなモジュールはXOOPSと互換するようなライブラリを独自で開発するか、単純な機能しかもたないモジュール（例えば、index.phpでphpinfo()だけを出すモジュール）に限られると考えられます。あくまで、理論上可能という話です。XOOPS専用モジュールである限り、GPL汚染からは逃れられそうにありません。</p>

<h3>XOOPS CubeのBSDならどうか？</h3>

<p>XOOPS Cubeは修正BSDライセンスでリリースされていると聞きます。では、縛りのゆるい修正BSD版XOOPS Cube用にモジュールをリリースすれば、GPL汚染から逃れることができるでしょうか？</p>

<p><s>そもそも、XOOPS Cubeが修正BSDライセンスだと勘違いしている人がいるように思います。<XOOPS CubeはXOOPS Cube LegacyとXOOPS Cube Coreの内包関係があって、プログラムとしてもどこがどこなのか混沌としています（OSCでもCubeとLegacyの違いを聞かれたなあ〜）。おそらくこれが、XOOPS Cubeが修正BSDライセンスという誤解を招いたのだと思われます。「XOOPS Cube」の解釈をめぐっては、公式サイトでも、曖昧性を残しています。</s></p>

<blockquote>
XOOPS Cube Legacy は、 Cube コアのモジュールのひとつです。当プロジェクトが新作した Cube コアと、 XOOPS2 JP の後継版として働く Legacy の二つが手を繋いで、 XOOPS Cube Legacy （以下XCL）が動作します。<strong>XCL は、 ”XOOPS Cube でもあり</strong>、 XOOPS2 JP の後継アプリケーションでもある” という、とてもユニークな CMS です。<br />
<a href="http://xoopscube.sourceforge.net/ja/legacy/index.html">XOOPS Cube Legacy の真実……？
</a>
</blockquote>

<p><s>では、XOOPS Cubeのどこが修正BSDライセンスかというと、XOOPS Cube Coreです。これはXCLでいうところの、XOOPS_ROOT/core/フォルダのみを差します。xoopscube.jpにはXOOPS Cube Coreのみが修正BSDライセンスとの旨を誤解なく書いています。</s></p>

<blockquote>
XOOPS Cube Core<br />
XOOPS Cube Coreは修正BSDライセンスを採用しています。修正BSDライセンスは、元のBSDライセンスから広告条項の部分を削除したものです。<br />
<a href="http://xoopscube.jp/page/5"> ライセンス </a>
</blockquote>

<p>[修正 2010/03/07]正確には、XOOPS CubeとXOOPS Cube Coreは同じものを差します。したがって、XOOPS Cubeは修正BSDライセンスということになります。なお、XOOPS CubeとXOOPS Cube Legacyはライセンスが異なります。XOOPS Cubeは修正BSDライセンス、XOOPS Cube LegacyはGPL2ライセンスです。修正BSDライセンスのXOOPS Cubeというのは、<a href="http://sourceforge.net/projects/xoopscube/files/xoopscube/snapshot_20071208/Core_XCube_20071208.zip/download
">ここ</a>で配布されているものです。</p>

<p>coreだけでモジュールを作ればライセンスはGPLに限られません。ところが、coreだけでは通常のモジュールを作れないのが現実です。つまり、XOOPS CubeであってもXCLであっても、GPL2が飛び火してしまうのは避けられないことのようです。</p>

<p>[補足 2010/03/07]minahitoさんによると、「XCコアモジュール（Legacy Base非依存の、コアのサブシステムを差し替えるもの）は修正BSDで出せますよ。」とのことなので、Legacyから独立したベースモジュールの場合、GPL汚染は起こりません。</p>

<h3>テーマがCCでリリースされてる件</h3>

<p>テーマはモジュールと異なり、CC(クリエティブ・コモンズ)で公開されていることがあります。どうも、テーマはモジュールとは事情が異なるようです。それは、ひとつの考えとして、テーマがそれだけで完結している点が挙げられると思います。</p>

<p>テーマはSmartyに依存していますが、Smarty自体はLGPLです。LGPLは動的にライブラリを使う場合は、GPLやLGPLの制約を受けないというライセンスです。したがって、Smartyに依存するだけでは、GPLの感染の問題はありません。</p>

<p>しかし、XOOPSのSmartyプラグイン(xoops_date_format, xoops_userなど)を使ったテーマを配布する場合は、テーマもGPL2ライセンスにする必要がありそうです。なぜなら、XOOPSのSmartyプラグインはGPLだからです。GPLでは、動的にプラグインを使用する場合でも、その著作物をGPLにライセンシングすることを要求します。</p>

<p>Smartyにもとから入っているプラグインだけで作ったテーマなら、GPLでなくてもいいといったところだと思います。ただし、Smarty変数がXOOPSなしでは定義されない点を考えると、XOOPSに依存しているということになり、GPL2適用の義務が生じるかもしれません。この点で、テーマはGPLと非互換のCCで配布するのは、グレーゾーンでもあります。</p>

<p>[補足 2010/03/07]minahitoさんによると、「あとテーマは、コードとみるかリソースとみるかで解釈が全く変わります。パイプラインがテーマをコンパイルし、結合可状態へ導いて初めてリンクされるので、GPLとコンフリクトしないライセンスなら(コンフリクトするとXCLで使用不可)選べると思います。」とのことです。リソース、つまり「データ」としてテーマを見る場合はGPL以外の選択肢もあるということ。（minahitoさんはGPLと互換性のあるライセンスならOKとしていますが、GPL汚染を受けていないと主張できる独立したテーマなら、非互換のライセンスで配布も可能なはずです。なぜなら、結合の制約は「複製・頒布・改変」のときだけで、実行するときにGPL非互換と結合することは制限していないはず。）ただし、コードかリソースかも解釈に依存していて、もしテーマがリソースだと判断できない場合は、GPL汚染を受けるかもしれないということです。たとえば、ひとつのテーマパッケージにXOOPS依存のPHPコードが混じっている場合など。詳しくは<a href="http://www.gnu.org/licenses/gpl-faq.ja.html#IfInterpreterIsGPL">FAQ</a>に書いてあります。</p>]]>
</content>
</entry>
</feed>