やりたいこと
基本ファイル
pdfタイトルの変更
会社情報の変更
会社印png実装
支払い種別記載
参考記事
やりたいこと
▶︎PDFタイトルの変更
▶︎会社情報の変更(店名→会社名)
▶︎会社印PNG実装
▶︎支払い種別記載
基本ファイル
root/src/Eccube/Service/OrderPdfService.php
PDFタイトルの変更
messages.ja.yaml
をカスタマイズ
src/Eccube/Resource/locale/messages.ja.yaml
↓コピペ
app/Customize/Resource/locale/messages.ja.yaml
886 admin.order.delivery_note_title__default: お買上げ明細書(納品書)
以下に変更
886 admin.order.delivery_note_title__default: お買上げ明細書兼領収書
会社情報の変更(店名→会社名)
領収書となるため正式な会社名が必要
302 // ショップ名
303 $this->lfText(125, 60, $this->baseInfoRepository->getShopName(), 8, 'B');
以下に変更
302 // ショップ名
303 $this->lfText(125, 60, $this->baseInfoRepository->getCompanyName(), 8, 'B');
会社印PNG実装
会社印をPNGでアップロード
root/html/user_data/assets/pdf/logo.png
PDF上の配置位置カスタマイズ
327行目を変更
$this->Image($logoFile, X座標, Y座標, 横幅);
320 // user_dataにlogo.pngが配置されている場合は優先的に読み込む
321 $logoFile = $this->eccubeConfig->get('eccube_html_dir').'/user_data/assets/pdf/logo.png';
322
323 if (!file_exists($logoFile)) {
324 $logoFile = $this->eccubeConfig->get('eccube_html_admin_dir').'/assets/pdf/logo.png';
325 }
326
327 $this->Image($logoFile, 135, 76, 25);
支払い種別記載
クレジットカード支払
銀行振込支払
現金代引引換
上記の種別を記載するため、備考欄のテキストフォームをプルダウンメニューに変更
input属性を取得
ブラウザ管理画面の開発デベロッパーツールよりinput属性を取得
<input type="text" id="order_pdf_note1" name="order_pdf[note1]" maxlength="255" class="form-control">
twigカスタマイズ
order_pdf.twig
をカスタマイズ
root/src/Eccube/Resource/template/admin/Order/order_pdf.twig
↓コピペ
root/app/template/admin/Order/order_pdf.twig
136 <div class="font-weight-bold">{{ 'admin.order.delivery_note_memo'|trans }}</div>
137 <div class="form-group">
138 <label>{{ 'admin.order.delivery_note_line1'|trans }}</label>
139 {{ form_widget(form.note1) }}
140 {{ form_errors(form.note1) }}
141 </div>
以下に変更
136 <div class="font-weight-bold">{{ 'admin.order.delivery_note_memo'|trans }}</div>
137 <div class="form-group">
138 <label>支払い種別</label>
139 <select type="text" id="order_pdf_note1" name="order_pdf[note1]" maxlength="255" class="form-control">
140 <option value="支払種別:代金はクレジットカード支払いで領収いたしました">支払種別:代金はクレジットカード支払いで領収いたしました</option>
141 <option value="支払種別:代金は銀行振込で領収いたしました">支払種別:代金は銀行振込で領収いたしました</option>
142 <option value="支払種別:代金は現金代引引換で領収いたします">支払種別:代金は現金代引引換で領収いたします</option>
143 </select>
144 {{ form_errors(form.note1) }}
145 </div>
twigファイルのカスタマイズはキャッシュ削除しながら行う
参考記事
https://doc4.ec-cube.net/design_messages
https://doc4.ec-cube.net/design_template
https://umebius.com/eccube/eccube4-original-logo-order-pdf/
https://www.xross-cube.com/EC-CUBE_doc/classes/Eccube-Entity-BaseInfo.html#method_getCompanyName
https://www.tagindex.com/html5/form/select.html