EC-CUBE3.0系ではSymfonyComponentの1つであるFormにより、Twig内では強力な関数form_widget、form_errorsが使用できます。

これらは作成したFormType(定義ファイル)に従って自動で初期データ入力やエラー処理をしてくれるというたいへん便利なものです。

ただ、EC-CUBE3では自動でBootstrap3のクラスであるform-controlが付いてしまうためにコーディングの自由が奪われるという話をよく耳にします。

慣れるとこのことを踏まえたコーディングが可能となるので実は高速化につながるのですが、出力したHTMLからform-controlを取り除くことも可能です。
いくつか方法はありますが代表的なものを記載します。

1.Form/form_layout.twigを読み込まないようにする

Application.php内のinitrenderingというメソッドで1行をコメントアウトします。

        $this->register(new \Silex\Provider\TwigServiceProvider(), array(
//            'twig.form.templates' => array('Form/form_layout.twig'), // この行をコメントアウト
        ));

 

2.bootstrap_3_layout.html.twigを継承しないようにする

{%- extends ‘bootstrap_3_layout.html.twig’ -%}というようにform_layout.twigでは継承が行われています。

これを”form_div_layout.html.twig”を直接継承するなどbootstrap_3_layoutを使用しないようにします。

Bootstrap3なしのフォーム

Bootstrapを使用したくない方はぜひお試しください。

日本発!ECオープンプラットフォーム「EC-CUBE」 EC-CUBEゴールドパートナー EC-CUBEは株式会社イーシーキューブの商標です

EC-CUBEカスタマイズに関するお問い合わせはこちら


    [重要]現在公式にセキュリティサポートが切れていないPHPは8.1以上、MySQLは8.0以上で、対応しているEC-CUBEバージョンは4.2以上です。古いEC-CUBEを使っている方は適切なタイミングでバージョンアップをご検討ください。

    EC-CUBEバージョンアップ