メモ書きです。
気が付いたら / 分かったことが増えたら、随時更新。
全般
- config.php などはなくなったので .env or .htaccess にて環境設定値を書く。
- APP_DEBUG=1 にして デバックバーを活用する
- 編集したいページが出てきたら @Route("/url", name="url") を探す
- とりあえずキャッシュをクリアする
- <meta name="eccube-csrf-token" content="{{ csrf_token(constant('Eccube\\Common\\Constant::TOKEN_NAME')) }}"> は消さない
- キャッシュクリア
php bin/console cache:clear --no-warmup - Proxy クラスを生成
php bin/console eccube:generate:proxies - SQLのアップデート 確認(実行の前にまずはこれで確認を)
php bin/console doctrine:schema:update --dump-sql - SQLのアップデート 実行
php bin/console doctrine:schema:update --dump-sql --force
- {{ url('homepage') }}
- {{ url('product_list') }}?category_id=1
- {{ url('product_detail', {'id': 1}) }}
- {{ url(eccube_config.eccube_user_data_route, {'route': 'hoge'}) }}
画像の呼び出し
- {{ asset('assets/img/hoge.jpg') }}
使ってみたいプラグイン
- 【簡単ページ追加】taba app CMSプラグイン for EC-CUBE 4
WordPress を入れることなく、カスタムフィールド感覚なことができちゃう凄そうなプラグイン。使い勝手がよさそうで、めっちゃ使ってみたい。予算が下りず試せてませんが、販売価格以上の価値があると思います!
Twig 上で完結できるお手軽カスタマイズ
Twig 小技
- トップページだけタイトルを変える
{% if title == "TOPページ" %}{{ BaseInfo.shop_name }}|トップページのタイトルにありがちな決まり文句などを書く{% else %}{% if subtitle is defined and subtitle is not empty %}{{ subtitle }} - {% elseif title is defined and title is not empty %}{{ title }} - {% endif %}{{ BaseInfo.shop_name }}{% endif %} - HTML を出力したい
|raw を付ける - |trans とは
定義済みの言葉を翻訳してくれる。
日本向けだと活躍する機会はない。 - if 分で定義済みかどうか
{% if hoge is defined %} - 変数に値をセットする
{% set hoge = '' %} - 置換をする
{{ 'ほげほげ'|replace({'げ': ''}) }}
{{ 'ほげほげ'|replace({'げ': '', 'ほ': 'お'}) }} - Twig 関数の間に文字列を出力する
{{ asset('assets/img/hoge-' ~ id ~ '.jpg') }} - ログイン状態を判定する
{% if is_granted('ROLE_USER') %}
SQL
- 一括で何かする際、外部キー制約で実行できないことが多いので、
先頭に
SET FOREIGN_KEY_CHECKS = 0;
後ろに
SET FOREIGN_KEY_CHECKS = 1;
を付けるとよい
コメント