ホーム > タグ > SOY CMS

SOY CMS

SOY CMS でエントリーの要素が空のとき、代替表示するための設定があった。

ちょっと諸事情により SOY CMS の使い方をまとめたりしてるんですが、マニュアルに以下のような記述があることに初めて気付きました。

※title, content, moreが空の時に表示する値をcms:altで指定できます。

»SOY CMSマニュアル – よく使う項目(タグリファレンス) – 標準ブロック(block:idを指定するブロック)

エントリーの「タイトル」と「内容(本文)」と「追記」について、それぞれが空のときに表示する代替値を予め設定できるそうです。
いやー、こんなのがあったとは。
知りませんでした。

「title, content, more」だけなので使いどころは限られるような気がしますが、覚えておいたらいつか使える……かも。
(カスタムフィールドに使えたら、いろいろ幅は広がりそうですけど)
ちょっと「おっ!」ってなったので残しておきます。

あと、同じ「cms:id」「b_block:id」「m_block:id」を複数回使うときの方法についても、上記のページ(の一番下)に載ってあります。

cms:idの値は同じブロックの中では一度しか使えないという制約があります。
つまり、同じブロック内でタイトル(cms:id=”title”)などを繰り返し使えないということです。

これではやはり不便なので1.2.4以降ではcms:id=”title*”として繰り返し使えるようにしました。

b_block:idやm_block:idについても*を付けることで同じページで複数回使うことができます。

これは頻繁に使いますね。メモメモ。
ひょっとしたら「cms:id」より「b_block:id」の方によく使ってるかもです。

SOY CMS で記事の日付に曜日を日本語(漢字)で表示する方法。

[2011.08.03 追記 「$information["create_date"]」の仕様変更、および、「strtotime」関数によるタイムスタンプへの変換についての記述を追加しました。]

ググってもあまり情報が無かったので、とりあえずメモ。

SOY CMS でブログ記事の日付を表示するとき、「cms:id=”create_date”」で作成日を取得することができますが、一緒に「cms:format」を指定することで日付のフォーマットを任意に変更できます。
例えば「cms:format=”Y年m月d日”」と指定したときは、「2011年03月08日」という具合。
フォーマット指定の書式は、PHP の date 関数と同じものが使えます。
»PHP: date – Manual

ただ、date 関数だけでは、曜日を日本語(というか漢字)で表示することができません
英語だけで良ければ、フォーマットに一文字追加するだけで良いんですけどね(フルスペルなら「l」(小文字の L)、3 文字なら「D」)。
残念ながら日本語の場合は date 関数によって数値を取得し、それに応じた文字に置き換える必要があります。

で、色々検索してみたりしたんですが、意外と見付からなかったので、自分で組んでみました。
この記事の続きを読む

SOY CMS で PHP を使って記事ごとに設定を任意で変えられるようにしているときに「cms:id」などが含まれている場合の対処法。

(2011.01.26:PHP の書き方を変更したコードを追記しました)

「新着情報」などのコンテンツをトップページやアーカイブで表示するとき、記事ごとに任意で設定を変えることがあります。
「重要!」などのアイコンの表示/非表示とか、太字にする/しないとか、リンクを設定する/しないとか。
カテゴリー名を表示するだけならシステム側で自動にできるんですが、これらの設定は人(記事の編集者)が手動で設定することになります。

SOY CMS(ver.1) でそれを実現するには、カスタムフィールドでその設定項目(チェックボックスなど)を追加して、表示させたいページに PHP の if 文を追記します。
その手順などは以下の記事で紹介されているので、カスタムフィールドの設定方法とか PHP 文の細かい意味とか、詳しいことはそちらを参照ください。
»SOY CMSのカスタムフィールドを使った条件分岐(1) | ウェビンブログ | 札幌のWebデザイナー・カスタマイズアドバイザー WebbingStudioのよしなし語り

僕の方では、ちょっとだけ応用の話を書きます。

とりあえず下準備の手順などを簡単に書いておくと、

  1. SOY CMS の管理画面で「プラグイン」タブを選択し、「カスタムフィールド」プラグインを有効にする
  2. 「プラグインの詳細設定」で、任意の ID とフィールド名を入力し、プルダウンから「チェックボックス」を選択して、カスタムフィールドを追加する。
    (僕は今回、詳細記事へのリンクの切り替えをしたかったので、IDは「to_detail」、フィールド名は「詳細へ」にしました)
  3. 追加したフィールドの「高度な設定」をクリックし、ラベルの関連付けを行う。(ここで関連付けたラベルの記事の編集画面にのみ、設定項目が表示されるようになる)
  4. 表示させたいページに PHP の if 文を追記する。

という感じ。

カスタムフィールドの追加は特に難しくないと思いますが、問題なのは PHP です。
この記事の続きを読む

SOY CMS でルート設定するとアクセスできなくなってしまうディレクトリを救出する方法

SOY CMS でサイトを制作して、ドメイン直下にページを公開したい場合は「ルート設定」をします。
その意味や方法についてはマニュアルを見ていただくとして、今回のテーマは「ルート設定からの逃れ方」。

サーバーによっては、コントロールパネル(管理画面、以下「コンパネ」)がサイトと同じ階層(FTPで見えるところ)にあったり、全然別のURLなのにあたかも同じサーバーに乗っかってるような設定になっているところがあります。
(すんません。何を書いてるか自分でもよく分からないんですが、同じ状況になった人なら分かってくれると思います。たぶん)

で、そんな場合に SOY CMS のルート設定をすると、コンパネにアクセスできなくなったりすることがあるワケですね。
僕の場合は「404 Not Found」エラーになりまして、SOY CMS で設定した「見つかりません」ページが空しく表示されるばかり。
試しにルート設定を外してみると、コンパネにアクセスできるようになります。
再度設定すると、やっぱりまたアクセスできない。

うーん……、ルート設定に原因があることは間違いないみたい……。
これは困った。

……んですが、いろいろ試していると運良くうまくいく方法があったので、備忘も兼ねてご紹介しておきます。
この記事の続きを読む

「CSS Nite in KANSAI, LP1 〜CMS POWER USER’S SUMMIT 2010〜」に参加してきました!

※まだ書き切れてませんが、とりあえずアップします。

2/27(土)に「CSS Nite in KANSAI, LP1 〜CMS POWER USER’S SUMMIT 2010〜」というイベントに参加してきました。
ちょっと遅くなっちゃいましたが、簡単にレポート(というか感想文)をまとめておきます。

イベントの概要

今回は CSS Nite in OSAKACSS Nite in KYOTO の合同イベントのため、「CSS Nite in KANSAI」という名前になっているそうです。
その名前から分かる通り、規模としてはかなり大きなイベントでした(最終的な参加者は約240人!)。

今回のイベントの最大の特徴は「ユーザー目線からのセミナー」であること。
つまり、CMS の開発者が「こんな機能があるよ! こんなに便利だよ!」という話をするのではなく、実際にその CMS を使っている人が「こういうシーンではこういう使い方ができるよ!」ということを紹介してくれるのです。

意外と、こういう形式のイベントって少ない。
そして、こういう形式の方が、聞いている人にとってはタメになるというか、実際に使うイメージを掴みやすかったりします。
今後も、こういう形式のイベントをどしどし開催して欲しいですね。

会場は、「TKP大阪梅田ビジネスセンター 14階 ホール14A」。
本編が 14:30〜18:30 、懇親会が 19:00〜21:00 というタイムスケジュールでした。
(結局 21:40 くらいまでみんな残ってましたけどね)
この記事の続きを読む

1 / 212

Home > Tags > SOY CMS

リンク
フィード
メタ情報

このページのトップへ