0
welcart:PDF(納品書や請求書)に表示されるテキストを変更する
Tag: Welcart
welcartは受注管理からPDFを発行できます。
その際、基本情報や顧客情報を自動で出力しますが、任意で変更できる項目はありません。
メッセージテキストくらい変更したいなと思ってる人も多いんじゃないでしょうか?
実はテキスト変更用にフィルターが用意されてるんですよね!
ここではそのフィルターを使ってテキストを変更する方法をご紹介します。
usces_filter_pdf_●●●_message
welcartが吐き出せるPDFは4種類ありまして
- 見積書
- 納品書
- 請求書
- 領収書
フィルター「usces_filter_pdf_●●●_message」の●●●の部分の文字列がそれぞれのPDFに対応するようになっています。
下記で紹介するコードを必要なものだけfunctions.phpに追加してください。
見積書
function change_estimate_message() { $message = <<<EOF 見積書テキスト見積書テキスト見積書テキスト見積書テキスト見積書テキスト見積書テキスト 見積書テキスト見積書テキスト見積書テキスト見積書テキスト見積書テキスト見積書テキスト EOF; return $message; } add_filter( 'usces_filter_pdf_estimate_message', 'change_estimate_message' );
納品書
function change_invoice_message() { $message = <<<EOF 納品書テキスト納品書テキスト納品書テキスト納品書テキスト納品書テキスト納品書テキスト 納品書テキスト納品書テキスト納品書テキスト納品書テキスト納品書テキスト納品書テキスト EOF; return $message; } add_filter( 'usces_filter_pdf_invoice_message', 'change_invoice_message' );
請求書
function change_bill_message() { $message = <<<EOF 請求書テキスト請求書テキスト請求書テキスト請求書テキスト請求書テキスト請求書テキスト 請求書テキスト請求書テキスト請求書テキスト請求書テキスト請求書テキスト請求書テキスト EOF; return $message; } add_filter( 'usces_filter_pdf_bill_message', 'change_bill_message' );
領収書
function change_receipt_message() { $message = <<<EOF 領収書テキスト領収書テキスト領収書テキスト領収書テキスト 領収書テキスト領収書テキスト領収書テキスト領収書テキスト EOF; return $message; } add_filter( 'usces_filter_pdf_receipt_message', 'change_receipt_message' );
注意点
上記で紹介したような文字数であれば問題ないですが、文字数増えたり行数増えたりするとおかしいことになります。
この部分を変更するにはプラグイン内にあるファイルを直接変更しないといけないのであまりおすすめはしません。
変更する場合、includesフォルダ内のorder_print_ex.php、もしくはorder_print.phpを書き換えます。
適用税率の設定で、標準税率がorder_print.php、軽減税率がorder_print_ex.phpを読み込みます。
領収書
テキストが長くなった場合、お店情報のテキストにかぶってしまいます。
これを回避するにはこの部分の幅を調整してやります。
*order_print_ex.php 436行目あたり *order_print.php 368行目あたり // Message … $pdf->MultiCell( $width + 70, $lineheight, usces_conv_euc( $message ), 0, 'L' ); ↓ $pdf->MultiCell( $width + 10, $lineheight, usces_conv_euc( $message ), 0, 'L' );
それ以外
上記のコードはすべて2行になってますが、それ以上行数が増えると下の購入商品情報部分と重なってしまいます。
これを回避するにはこの部分の位置を上にずらしてやります。
ただ増やす場合も3行が限界かと。
お店情報の情報量によってはもう少し増やせるかもですが。
・納品書 *order_print_ex.php 656行目あたり *order_print.php 588行目あたり ・領収書、請求書 *order_print_ex.php 724行目あたり *order_print.php 655行目あたり // Message $y = 80; ↓ $y = 75;