2009年07月08日
エラーページもちゃんと設定しよう!のススメ
宮澤です。
先月の東京行きの結果いろんな人の要望を聞くことが出来てフィードバックの作業もぼちぼち進んでいるこの頃です。
早ければ今月の20日くらいには1.2.6のRC版が出せるかな~といったところですね。細かくバージョンアップするのはユーザを煩わせるような気もしますが、毎回何かしらの目玉を用意していくつもりです。
1.2.6ではWYSIWYGエディタをラベル毎にオン、オフ出来るようになったりブロックやページの設定をコピーするプラグインなどが同梱されたり、ページ構築を便利にする機能が増える予定です。
というわけで表題の件。
SOY CMSではエラーページを自由に設定することが出来ます。これはちょっとした利点でもあるのですが、中々活用していない人が多いです。
かく言う農場日記もエラーページはディフォルトのままでした…。
見栄えだけでなく、どこそこがエラーになってますよーなどの報告へのリンクを貼ることも出来るとは思うのでそのままにされてる方は一度挑戦してみてください。
2009年06月10日
マルチドメイン環境その2
管理側と公開側でURLを分けたい場合として、「さくらのスタンダードで複数ドメイン運用」という記事を書きましたが今回はそれと少し違った場合です。
THE HAM MEDIAさんの記事「マルチドメイン設定でSOY CMSが未だにうまくインストールできない」で書かれているような環境での動作についてです。
例)
公開側URL http://localdomain/
公開側パス /home/www/htdocs
管理側URL http://cms.localdomain/
管理側パス /home/www/htdocs/cms
このように、管理側と公開側でURLを完全に切り分けたい、という要望です。
このような設定を行うには簡単にはVirtualDocumentRootを使います
<VirtualHost *:80>
ServerName local
VirtualDocumentRoot "/home/www/htdocs/%1"
</VirtualHost>
<VirtualHost *:80>
ServerName localdomain
DocumentRoot "/home/www/htdocs/"
</VirtualHost>
VirtualDocumentRootを使うことで、たとえばサイトIDがtestのサイトを作成した場合はhtto://test.localdomain/で自動的に公開出来ます。
さて、現状このような方法は出来ません。なぜかというと、VirtualDocumentRootを使った場合はDocumentRootの場所が期待した形にならないからです。
例えばhttp://cms.localdomain/admin/index.phpでサーバ変数を取得した場合、DocumentRootには以下のような値が入ります。
/home/www/
期待しているDocumentRootは
/home/www/cms
なので少し違いますね。
なのでちょっと仕組みを考えてみました。
元々、サイトの作成ディレクトリについてはuser.config.phpで変更できるようになっていました。
それにいくつかの設定項目を追加して変更できるようにします。
変更を加えたバージョンを暫定公開しますので、興味のある方はダウンロードしてみてください。
- http://www.soycms.net/web/files/soycms/soycms_1.2.6RC_sqlite.zip
- http://www.soycms.net/web/files/soycms/soycms_1.2.6RC_mysql.zip
user.config.php.sampleをuser.config.phpにリネームして使ってください。
※このバージョンは開発中のものです。既存のサイトには決して使用しないでください。
また、プラグインなども同梱されていません。必要な方は1.2.5aのプラグインを使ってください。
PHP5.2.1(CGI) on Windows以外では動作確認を行っていません。またどこかに不具合が生じるかもしれませんので扱いにはくれぐれも注意してください。
●設定方法
user.config.phpファイルを開き以下のように書き換えます。
//サイトを作成するディレクトリを指定する(デフォルトはドキュメントルート)。
define("SOYCMS_TARGET_DIRECTORY", "/home/www/htdocs/");
//公開側のURL
define("SOYCMS_TARGET_URL", "http://localdomain/");
//管理側のドキュメントルートを動かす場合に指定
define("SOYCMS_ADMIN_ROOT", "/home/www/htdocs/cms");
公開側のURLはディフォルトで作成されるURLです。
例えばサイトIDがtestのサイトを作った場合は「http://localdomain/test/」というURLに自動で設定されます。
ユーザの環境に応じて上のパスなどを変更してください。
うまく動作すれば次バージョンから導入される予定です。
2009年05月19日
さくらのスタンダードで複数ドメイン運用
何点か問い合わせがありましたので、開発ブログに記事としてまとめます。
さくらインターネット(http://www.sakura.ne.jp)のスタンダードプランで複数ドメインでサイトを運用したい場合、以下のような形で運用が可能です。
【ディレクトリ構造】(さくらインターネットのアカウントがaccountidの場合)
/
└home/
└accountid/ ←アカウントのホームディレクトリ
└www/ ←ドキュメントルート
└cms/ ←SOY CMSをインストール
├admin/ ←CMS管理
├common/
└soycms/ ←各サイト管理
testsiteというサイトIDのサイトを作成した場合は以下
/home/accountid/www/
└cms/… ←soycmsをインストール
└testsite/ ←testsiteのディレクトリ
├files/
├…
├index.php
└.htaccess
【管理画面のURL】
CMS管理 http://accountid.sakura.ne.jp/
各サイト管理 http://accountid.sakura.ne.jp/
【ドメインの割り当てまで】
SOY CMSでサイトを作成するとwww以下にサイトのディレクトリが
このままでもtestsiteには
http://accountid.sakura.ne.jp/
でアクセス可能です。
このサイトに別ドメインを割り当ててアクセスできるようにするに
さくらの管理画面で /home/accountid/www/testsite/ に
ドメインを割り当てる必要があります。
さらに /home/accountid/www/testsite/.
「RewriteEngine on」の次の行に「RewriteBase /」と書き足してください。
※他は変更しないでください。
さらにSOY CMSの管理画面でサイトの詳細でのサイトのURLを割り当てた
以上で割り当てたドメインでtestsiteが表示されるように
2009年05月15日
運用者向けマニュアル
運用者向けマニュアルを簡単ですが作ってみました。
導入時の説明などにご利用ください。コンテンツの転用・改変はSOY CMSに関する説明目的であればご自由にしていただいて結構です。
2009年04月22日
サイト設定の「サイトURL」とは
こんばんは、okadaです。
サイト設定の「サイトURL」がSOY CMSでどう使われるのかはっきりせず、
どういうときに設定したらいいのかがわかりにくくなっていると思います。
フォーラムにも書いたのですが(Re: パーマネント リンク,アドレス)、
サイトURLはエントリーエディタとテンプレートエディタでファイルマネージャーから
画像などを挿入する場合にのみ使われています。
ファイルマネージャー内部で保持している各ファイルのURLの一部にサイトURLが
使われていて、画像の挿入時にそのURLでリンクが張られると言うことです。
このURLは画像の挿入時にべた書きされるので、画像の挿入後にサイトURLを
変更してもエントリーやページ内の画像URLは挿入時の値のままです。
できればサイトURLの変更に対応できるようにしたいとは思うのですが、
現状そのようになっています。
なお、通常「ルート設定」を行った場合でもサイトURLを変更する必要はありません。
わからないことがあればフォーラムやこのブログのコメント欄で気軽に
尋ねてもらえればと思います。
2009年03月10日
block:idやcms:idの書き方、PHPコードを書く場合の変数
こんばんは、okadaです。
WebbingStudioさんがブログでSOY CMSを取り上げてくれました。
北海道開発オフ:SOY CMSは、SOHOやWebデザイナーの救世主になるのか - ウェビンブログ
第7回「DevDo北海道開発オフ」という勉強会でSOY CMSを取り上げてくださったとのことです。
うれしいですね。
ちょっと厳しい意見が多いのですが、どれも至極当然のものだと思いますので、今後の開発で取り入れていきたいと思っています。
次のエントリー(エックスサーバーにSOY CMSをインストールする)で
前回のレビューでは業務利用の面からかなり辛口なことを書いていますが、SOYCMSは個人用としては充分なCMSです。
MovableType等のブログにはない機能もありますので、興味のある方はいちど使ってみてください。
フォロー(?)してくださってます。なんかソイ坊や(仮)が叫んでますね。
で、指摘を受けた内容のうち、「WYSIWYGエディタ(TinyMCE)のインターフェースだけ異常に細かい点」ですが、次期バージョン1.2.4で改善を試みました。ぜひ確認していただければと思います。
「要素の中身を残したまま属性値かコメントで独自タグを指定する」仕様については、参加者からのご指摘のとおりです。
設計時の見本(モック)がそのままテンプレートとして使えるし、修正した場合でも反映が楽なのがポイント
キャッチコピー「HTMLほとんどそのまま」にあるとおり、これがウリでもあります。
ただ、これだと不便というか使いにくい、面倒というのもわかるので、HTMLのコメントでも指定できるようにしています。
例に挙げられていた <p><$mt:EntryTitle$></p> の場合ですと、
<p><!-- cms:id="title" --><!-- /cms:id="title" --></p>
のように書くこともできます。マニュアルには未記載で申し訳ないのですが、これを次のように短縮して記述することができます。
<p><!-- cms:id="title" /--></p>
これなら<p><$mt:EntryTitle$></p>と同じように使えるのではないでしょうか。
「titleやalt等の属性値内に記述できない」という点ですが、これはご指摘のとおりです。
1.2.3まではたとえばカスタムフィールドに画像のパスなどを設定してもimgタグのsrc属性に設定するにはPHPコードを書くしかなかったのですよね。
1.2.4ではカスタムフィールドプラグインが強化され、属性値に出力することが可能になっています。ぜひ試していただければと思います。
なおPHPコード書く際、$pageでそのページで使われているすべての変数にアクセスすることができます。また、ブロック内(block:id, b_block:id, m_block:idの設定された箇所)ではそのidの値と同じ名前の変数(block:id="news"であれば$news, b_block:id="entry"であれば$entry)でそのブロックで使われる値にアクセスすることができます。詳しくはvar_dumpなどで見てみてください。
「概要を出力する方法がわからない」ともありました。個人的には本文(cms:id="content")と追記(cms:id="more")で事足りるのではないかと思っていたのですが、そうとも限らないようです。
1.2.4では cms:id="content" や cms:id="more" と同時に cms:length="100" を指定すると、本文や追記からタグを取り除いて先頭から100文字を出力するようにしました(mb_substr(strip_tags($text),0,100)と同等)。もちろん cms:length の値は自由に設定可能です。
マニュアルの整備不足でアピール不足な点が申し訳ないのですが、今後ともSOY CMSを活用いただけると幸いです。
2009年01月23日
SOY CMSのコンセプトとは?
こんばんは、okadaです。
CoreserverでSOY CMSを運用する際の覚え書きという記事を見つけました。SOY CMSを使ってくれている上に導入の手順まで書いてもらえて大変ありがたい限りです。
マニュアルやノウハウといった情報の少なさは指摘のとおりだと思います。
マニュアルは結構頑張って整備したつもりなのですけど、機能追加に追いつけず書かれていない機能も結構あったりします。
でも導入時の壁はやはりコンセプトの把握でしょうか。これも指摘のとおりだと思います。
マニュアルはチュートリアル以外はリファレンスという位置づけなのでそれを読んでもどうしたらいいかわからない!となりますよね。
資料は少ないながらも結構作ったつもりなのですがあちこちに散らばっていてどれがどれなのかよくわからないということもあります。
というわけで資料をまとめてみました!
これらを読めばSOY CMSでサイトを構築するときにまず何をすればいいのかが見えてくるのではないかと思います。(どれもPDFです。)
今後とも「SOY CMS」をよろしくお願いします。
あ、次バージョン1.2.3のリリースは来週開けになりそうです。すみません![]()
2008年12月04日
お薦めお試し方法
こんばんは、ふるしょうです。
SOY CMSを試してみたいけどなかなか実際に試してみるまで至らない、というお話をよくお聞きするので、お薦めのお試し方法を紹介しておきます。
1.まずSaaS版にアカウントを作ります。(デモサイトでも構いません)
2.ページを適当なURL(たとえばトップページなら空欄)で作成します。
3.実際に公開されているサイトのトップページのhtmlを、2.で新規に作ったページのテンプレートにコピーアンドペーストして、cssや画像のリンク はhttp://・・・/から始まる形に書き換えて直接呼び出すようにします(コピペ前にエディタなどで置換しておくのが楽です)。
4.ソースのなかで、新着記事など書き換えたいところにblock:idとcms:idの設定を書き加えます。
5.ブロックの設定を行い、ページを公開します。
ブロックの追加方法はこちらをご覧下さい。
これで、SOY CMSがどのような仕組みで動いているか大体お分かりいただけると思います。
なお、テストに使用するhtmlデータの権利関係に関しては、ご自身で責任を持って管理をお願いします。
2008年12月01日
資料を作成しました。
ふるしょうです、簡単なものですが、SOY CMSの使い方の特徴がわかりにくいというお話をいただいたので、初めてSOYCMSをお使いになられる方向けに簡単な資料を作成しました。ページの種類をどう選択するのかのフローチャートも添えてありますのでご覧下さい。
SOYCMS概要説明(PDFファイル )
2008年09月01日
トップページの作り方
サイトのトップページの作成方法がわかりにくいとのお話があったので説明します。
サイトのトップページ(ルートサイト設定をするサイトはhttp://**/直下、それ以外のサイトはhttp://**/サイトID/)を作成するには、ページの詳細設定でURIのところを空にすればOKです。
フォーラムにも同じ情報をアップしておきますね。

