質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.02%

  • EC-CUBE

    262questions

    EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。

会員登録フォームの項目編集について EC-CUBE3系

受付中

回答 0

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 408

RyomaMinagi

score 19

[EC-CUBE]    EC-CUBE3系 最新ヴァージョン
[現象]    
現在、会員登録の項目を編集しています。
躓いてしまった部分といたしましては
項目の削除についてです。

まず、削除したい項目は
・fax
・会社名
の上記二点です。

私が行なった方法は
まずテンプレートであるtwigから上記のフォームを削除。

{% endblock javascript %}

{% block main %}
<h1 class="page-heading">新規会員登録</h1>
<div id="top_wrap" class="container-fluid">
    <div id="top_box" class="row">
        <div id="top_box__body" class="col-md-10 col-md-offset-1">
            <form method="post" action="{{ url('entry') }}">
                {{ form_widget(form._token) }}
                <div id="top_box__body_inner" class="dl_table">
                    <dl id="top_box__name">
                        <dt>{{ form_label(form.name) }}</dt>
                        <dd class="form-group input_name">
                            {{ form_widget(form.name.name01) }}
                            {{ form_widget(form.name.name02) }}
                            {{ form_errors(form.name.name01) }}
                            {{ form_errors(form.name.name02) }}
                        </dd>
                    </dl>
                    <dl id="top_box__kana">
                        <dt>{{ form_label(form.kana) }}</dt>
                        <dd class="form-group input_name">
                            {{ form_widget(form.kana.kana01) }}
                            {{ form_widget(form.kana.kana02) }}
                            {{ form_errors(form.kana.kana01) }}
                            {{ form_errors(form.kana.kana02) }}
                        </dd>
                    </dl>

                    <dl id="top_box__address_detail">
                        <dt>{{ form_label(form.address) }}</dt>
                        <dd>
                            <div id="top_box__zip" class="form-group form-inline input_zip {% if form.zip.zip01.vars.errors is not empty or form.zip.zip02.vars.errors is not empty %}has-error{% endif %}">{{ form_widget(form.zip) }}</div>
                            <div id="top_box__address" class="{% if form.address.pref.vars.errors is not empty or form.address.addr01.vars.errors is not empty or form.address.addr02.vars.errors is not empty %}has-error{% endif %}">
                                {{ form_widget(form.address) }}
                                {{ form_errors(form.address) }}
                            </div>
                        </dd>
                    </dl>
                    <dl id="top_box__tel">
                        <dt>{{ form_label(form.tel) }}</dt>
                        <dd>
                            <div class="form-inline form-group input_tel">
                                {{ form_widget(form.tel, {attr : {class : 'short'}}) }}
                                {{ form_errors(form.tel) }}
                            </div>
                        </dd>

                    <dl id="top_box__email">
                        <dt>{{ form_label(form.email) }}</dt>
                        <dd>
                            {% for emailField in form.email %}
                            <div class="form-group {% if emailField.vars.errors is not empty %}has-error{% endif %}">
                                {{ form_widget(emailField) }}
                                {{ form_errors(emailField) }}
                            </div>
                            {% endfor %}
                        </dd>
                    </dl>
                    <dl id="top_box__password">
                        <dt>{{ form_label(form.password) }}</dt>
                        <dd>
                            {% for passwordField in form.password %}
                            <div class="form-group {% if passwordField.vars.errors is not empty %}has-error{% endif %}">
                                {{ form_widget(passwordField, { type : 'password' }) }}
                                {{ form_errors(passwordField) }}
                            </div>
                            {% endfor %}
                        </dd>
                    </dl>
                </div>
                <div id="top_box__birth" class="dl_table not_required">
                    <dl>
                        <dt>{{ form_label(form.birth) }}</dt>
                        <dd>
                            <div class="form-group form-inline">
                                {{ form_widget(form.birth) }}
                                {{ form_errors(form.birth) }}
                            </div>
                        </dd>
                    </dl>
                    <dl>
                        <dt id="top_box__sex">{{ form_label(form.sex) }}</dt>
                        <dd>
                            <div class="form-group form-inline">
                                {{ form_widget(form.sex) }}
                                {{ form_errors(form.sex) }}
                            </div>
                        </dd>
                    </dl>
                    <dl id="top_box__job">
                        <dt>{{ form_label(form.job) }}</dt>
                        <dd>
                            <div class="form-group form-inline">
                                {{ form_widget(form.job) }}
                                {{ form_errors(form.job) }}
                            </div>
                        </dd>
                    </dl>
                </div>
                {% for f in form %}
                    {% if f.vars.name matches '[^plg*]' %}
                        <div class="extra-form dl_table">
                            {{ form_row(f) }}
                        </div>
                    {% endif %}
                {% endfor %}
                <input id="top_box__hidden_mode" type="hidden" name="mode" value="confirm">
                <p id="top_box__agreement" class="form_terms_link"><a href="{{ url('help_agreement') }}" target="_blank">利用規約</a>に同意してお進みください
                </p>

                <div id="top_box__footer" class="row no-padding">
                    <div id="top_box__button_menu" class="btn_group col-sm-offset-4 col-sm-4">
                        <p>
                            <button type="submit" class="btn btn-primary btn-block">同意する</button>
                        </p>
                        <p><a href="{{ url('index') }}" class="btn btn-info btn-block">同意しない</a></p>
                    </div>
                </div>
            </form>
        </div>
        <!-- /.col -->
    </div>
    <!-- /.row -->
</div>
{% endblock %}

その後、src/Eccube/Form/Type/Front/EntryType.phpにて
削除した項目に対して「'attr'=>array('style'=>'display:none;'),」を追加。

            ->add('company_name', 'text', array(
                'required' => false,
                'constraints' => array(
                    new Assert\Length(array(
                        'max' => $this->config['stext_len'],
                    )),
                ),
                'attr'=>array('style'=>'display:none;'),
            ))

            ->add('fax', 'tel', array(
                'required' => false,
                'attr'=>array('style'=>'display:none;'),
            ))

その次に、同じファイルにて削除した項目のコメント化です。

// ->add('company_name', 'text', array(
//                 'required' => false,
//                 'constraints' => array(
//                     new Assert\Length(array(
//                         'max' => $this->config['stext_len'],
//                     )),
//                 ),
//             ))
// 
//             ->add('fax', 'tel', array(
//                 'required' => false,
//             ))

二点の方法を行なったのですが、会員登録の情報を入力し
登録ボタンを押しても先に進みません。

なにかほかに方法などはございますでしょうか?

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • RyomaMinagi

    2017/10/26 18:11

    エラーなどは出ることなく、入力ページから先に進めなくなるのです。

    キャンセル

  • maverixz

    2017/10/27 17:32

    {{ url('entry') }}はどこに向いてますか(レンダリングされた値はなんですか)?

    キャンセル

  • OldRiver

    2017/11/13 23:29

    fax ・会社名を表示したくないだけであればこの2つは入力必須項目ではないのでtwigファイル上の出力している箇所から消すだけでPHPファイルは編集しなくてもよいと思ったのですが何か理由があるのですか?

    キャンセル

まだ回答がついていません

15分調べてもわからないことは、teratailで質問しよう!

  • ただいまの回答率 91.02%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る

  • EC-CUBE

    262questions

    EC-CUBEは、主に日本国内で開発されているECコンテンツ管理システムです。ロックオン社のECKitを元にしてオープンソース化され、商品管理・受注管理・顧客管理・売上集計などECに特化した様々な機能を備えています。