Secura Vita

Category: Works , WordPress , Plugins
Works

welcart:PDF(納品書や請求書)に表示されるテキストを変更する

Tag:

welcart:PDF(納品書や請求書)に表示されるテキストを変更する
  • twitter
  • facebook
  • はてな
  • line

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を読み込みます。

領収書

テキストが長くなった場合、お店情報のテキストにかぶってしまいます。

PDF

これを回避するにはこの部分の幅を調整してやります。

*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' );
PDF

それ以外

上記のコードはすべて2行になってますが、それ以上行数が増えると下の購入商品情報部分と重なってしまいます。

PDF

これを回避するにはこの部分の位置を上にずらしてやります。

ただ増やす場合も3行が限界かと。
お店情報の情報量によってはもう少し増やせるかもですが。

・納品書
*order_print_ex.php 656行目あたり
*order_print.php 588行目あたり
・領収書、請求書
*order_print_ex.php 724行目あたり
*order_print.php 655行目あたり

// Message
$y = 80;

↓

$y = 75;
PDF

おもしろかった・役に立った
  • twitter
  • facebook
  • はてな
  • line
▼ブログランキング参加中!クリック!▼
  • ブログランキング・にほんブログ村へ

Leave a comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

ソースコードを記入する場合は [code]~[/code] でくくってください。
[code]
echo "Hello World";
[/code]

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください