【EC-CUBE4】納品書のロゴと住所表記をカスタマイズする方法

【EC-CUBE4】納品書のロゴと住所表記をカスタマイズする方法

2020年6月2日

EC-CUBE4は受注一覧から納品書をPDFファイルで保存できますが、この納品書にはEC-CUBEのロゴが表示されてしまいます。しかも、なぜかショップの住所に都道府県が記載されません。

このままでは納品書として使いにくいので、納品書のロゴと住所表記をカスタマイズしたいと思います。

EC-CUBE4の納品書のロゴを変更する

EC-CUBE4の管理画面にログインし、「コンテンツ管理 > ファイル管理」へと進みます。

EC-CUBE4のファイル管理ページを開く

「このフォルダ内のファイル」の「assets」フォルダをクリックします。

assetsフォルダに移動する

assetsフォルダに移動したら「pdf」フォルダをクリックします。

pdfフォルダに移動する

pdfフォルダ内の「logo.png」が納品書に表示されるロゴ画像です。
このロゴ画像を一旦削除します。一番右端の「×」アイコンをクリックしたら画像を削除できます。

logo.pngを削除する

「logo.png」という名前のロゴ画像を作成します。元々のロゴ画像のサイズは横286px、縦38pxなので、このサイズでロゴ画像を作成した方がバランス良く表示されます。

ロゴ画像を作成したら、EC-CEBE4のファイル管理ページに戻ってロゴ画像をアップロードします。

ロゴ画像をアップロードする

以上で、納品書のロゴの差し替えは完了です。受注一覧から納品書をダウンロードしてロゴが変わっていることを確認してください。

EC-CUBE4の住所表記を変更する

EC-CUBE4の納品書に記載されるショップ住所は下記のような形式になります。

○○市○○町
○○丁目○○番

都道府県が表記されず、番地で改行されるので個人的には見にくく感じます。住所に都道府県を追加して、一行で表記されるようにカスタマイズしたいと思います。

住所の表記はEC-CUBE4の管理画面から変更することが出来ないため、EC-CUBE4のファイルを編集するしかありません。納品書の出力を行っている以下のファイルを開きます。

/src/Eccube/Service/OrderPdfService.php

ファイル内の以下のソースコードが住所の表記に関わる部分です。

// 都道府県+所在地
$text = $this->baseInfoRepository->getAddr01();
$this->lfText(125, 65, $text, 8);
$this->lfText(125, 69, $this->baseInfoRepository->getAddr02(), 8);

このソースコードを以下のように変更します。

// 都道府県+所在地
$text = $this->baseInfoRepository->getPref().$this->baseInfoRepository->getAddr01().$this->baseInfoRepository->getAddr02();
$this->lfText(125, 65, $text, 8);

これで住所の表記変更は完了ですが、二行表示を一行にしたため住所と電話番号の間に一行文のスペースが開いてしまいます。このままでも問題ありませんが、電話番号とメールアドレスを上に詰めようと思います。
電話番号とメールアドレスの表記に関わるソースコードは以下の部分です。

// 電話番号
$text = 'TEL: '.$this->baseInfoRepository->getPhoneNumber();
$this->lfText(125, 72, $text, 8); //TEL・FAX

// メールアドレス
if (strlen($this->baseInfoRepository->getEmail01()) > 0) {
    $text = 'Email: '.$this->baseInfoRepository->getEmail01();
    $this->lfText(125, 75, $text, 8); // Email
}

このソースコードを以下のように変更します。

// 電話番号
$text = 'TEL: '.$this->baseInfoRepository->getPhoneNumber();
$this->lfText(125, 69, $text, 8); //TEL・FAX

// メールアドレス
if (strlen($this->baseInfoRepository->getEmail01()) > 0) {
    $text = 'Email: '.$this->baseInfoRepository->getEmail01();
    $this->lfText(125, 72, $text, 8); // Email
}

これで電話番号とメールアドレスを一行分上に移動することが出来ました。
以上で、納品書と住所表記のカスタマイズは完了です。

EC-CUBE4の納品書のロゴと住所表記をカスタマイズする方法まとめ

納品書はショップを利用してくれたお客様に送付するものなので、最低でもロゴの変更はしておいた方がいいと思います。気になる方は住所表記の変更も試してみてください。

この記事を書くにあたり、以下の記事を参考にさせていただきました。

EC-CUBE4で4.0.3から管理画面で納品書のロゴ画像を変更できるようになります。Github 納品書に表示されているロゴの変更をファイル管理から出来るよう…
qiita.com
独自性の高いECサイトが無料で手に入る、日本発ECオープンプラットフォーム「EC-CUBE」の開発コミュニティサイト
xoops.ec-cube.net

以上、EC-CEBE4の納品書のロゴと住所表記をカスタマイズする方法でした。