お答えありがとうございました。
試して見ます。
その後、いろいろ調べていて、関連でちょっとやっかいかなと思うところがありました。
きっかけは、「フォーム」という日本語がどこにあるのかと探したら、language
languages/ja_JP.UTF8/MESSAGES/messages.po にみつけました。なるほど日本語化にときに入れられたんだなとそれなりに納得。問題はその後、フォームを新規追加するときのファイル、form_setup_html.php の中をみて、わかったことをコメントで書き込んでいくと、動作がおかしくなりました。おや!?と思って削除したら動作が回復しました。
で、教えてほしいのdすが、以下の
languages/ja_JP.UTF8/MESSAGES/messages.po
なかには、
#: export/concrete/blocks/form/form_setup.html.php:99
のように最後に行番号らしきものが書いてあります。
もしかしてソースの行数、行位置が結びつけられているのでしょうか。
そうとすれば、そのへんの関連を解除するいい方法はないでしょうか。
独自の「フォーム」ブロックの作成についておしえてください
2011年4月10日 at 8:27
同梱されている「フォーム」ブロックの機能アップを試しています。
まず元々の「フォーム」、"/concrete/blocks/form"を"/blocks/form_tomoac"にコピーし、テーブル名とクラス名がぶつかるので、それぞれリネームして独立させました。
実際にインストールを試みたところ、ブロックの名前と説明文が元と同じままなので、独自の名称に変更しようとしましたが変更方法がわかりません。
ヘルプを見ますと、
controller.php に、btName, btDescreption で記述するようになっていますが、元の「フォーム」には、btName, btDescreption が見当たりません。ファイルをgrepで確認しましたがありませんでした。
どこに記述してあるんでしょうか。
わかりましたらお教えください。
まあ、とりあえずインストールでき、同じ名前のブロックが2つ登録されたように見えますが、クローンといいますかコピーされたブロックが作れましたが。
Re: Re: Re: 独自の「フォーム」ブロックの作成についておしえてください
2011年4月10日 at 11:35
yamanoiです。
> languages/ja_JP.UTF8/MESSAGES/messages.po
> なかには、
> #: export/concrete/blocks/form/form_setup.html.php:99
> のように最後に行番号らしきものが書いてあります。
>
> もしかしてソースの行数、行位置が結びつけられているのでしょうか。
> そうとすれば、そのへんの関連を解除するいい方法はないでしょうか。
関係ありません。
たとえば
return t("Form"); は、
t()関数で"Form"をmessage.mo(message.poをコンパイルしたファイル)の中から
検索して、対応する日本語を返します。
よって、日本語前提で開発するのなら
rerun "フォーム";と書くのと同じです。
まずは、t()を使わないで開発するとよいのではないでしょうか。
> languages/ja_JP.UTF8/MESSAGES/messages.po
> なかには、
> #: export/concrete/blocks/form/form_setup.html.php:99
> のように最後に行番号らしきものが書いてあります。
>
> もしかしてソースの行数、行位置が結びつけられているのでしょうか。
> そうとすれば、そのへんの関連を解除するいい方法はないでしょうか。
関係ありません。
たとえば
return t("Form"); は、
t()関数で"Form"をmessage.mo(message.poをコンパイルしたファイル)の中から
検索して、対応する日本語を返します。
よって、日本語前提で開発するのなら
rerun "フォーム";と書くのと同じです。
まずは、t()を使わないで開発するとよいのではないでしょうか。
Your post has been saved and will be published after approval by the forum moderator.
みゅみゅ
Re: 独自の「フォーム」ブロックの作成についておしえてください
変数で記述しても関数で記述してもよい仕様になっています。
formの場合,getBlockTypeDescription()とgetBlockTypeName()で返す値を
書き換えてみてください。
インストールしなおせば反映されると思います。