Smarty “ryus_actionform_input"プラグイン
cubsonのwizardコマンドで生成される編集用テンプレートには下記のようなコードがずらっと並びます。
<{xoops_input type=text name=hoge_name value=$actionForm->get('hoge_name')}>
actionFormのプロパティ名とinputタグのname属性名は必ずしも一致させる必要が無いので、別々の指定ができるようにこのようになっています。
でも、ほとんどのケースで、inputタグのnameとactionFormのプロパティ名は合わせています。
それなのに、2回同じことを書いているので、修正時にうっかりどちらか片方の名称を変更し忘れると言うことがあります。
例えば、先ほどの例のhoge_nameをfoo_name に変更したときに、ウッカリ次のように片方だけ変更を忘れてしまうわけです。
<{xoops_input type=text name=foo_name value=$actionForm->get('hoge_name')}>
これをちょくちょくやってしまったので、nameを指定するだけで済むようにxoops_actionform_inputプラグインを作成してみました。
■使い方
foo_nameであれば、次のようにします。
<{ryus_actionform_input name=foo_name actionform=$actionForm}>
actionFormが、SmartyのactionForm変数にアサインされているのであれば、次のように省略することも可能です。
<{ryus_actionform_input name=foo_name}>
これで、少しでもウッカリミスが減ればなぁと思っています。