メインコンテンツにスキップ
バージョン: 1.x

レシートテンプレート

レシートテンプレートエディタを使用すると、POSシステムから印刷されたレシートの外観と内容をカスタマイズできます。テンプレートエディタには、次の場所に移動することでアクセスできます: WP Admin > POS > Templates

概要

テンプレートシステムは、2種類のテンプレートを提供します。

  • デフォルトテンプレート: プラグインおよびテーマファイルから自動的に検出されます。これらは削除できませんが、カスタムバージョンを作成するためにコピーできます。
  • カスタムテンプレート: ユーザーが作成したテンプレートで、完全にカスタマイズ、編集、管理できます。

テンプレートエディタへのアクセス

  1. WordPress管理ダッシュボードに移動します。
  2. POS > Templatesに進みます。
  3. 利用可能なテンプレートのリストが2つのセクションに整理されて表示されます:
    • デフォルトテンプレート(プラグイン/テーマファイルから)
    • カスタムテンプレート(あなたのカスタム作成物)

デフォルトテンプレート

システムは、3つのソースからレシートテンプレートを自動的に検出します。

テンプレートソース

ソース説明ステータス
プラグインWCPOSに含まれるコアレシートテンプレート常に利用可能
プロプラグインWCPOS Proからの強化されたテンプレートアクティブライセンスで利用可能
テーマアクティブテーマからのカスタムテンプレートテーマにテンプレートが含まれている場合に利用可能

テンプレートアクション

各デフォルトテンプレートに対して、次の操作が可能です。

  • プレビュー: テンプレートがサンプルデータでどのように見えるかを表示
  • コピー: 編集可能なカスタムコピーを作成
  • アクティブ化: POSのアクティブテンプレートとして設定

カスタムテンプレートの作成

方法 1: デフォルトテンプレートからコピー

  1. デフォルトテンプレートセクションで、カスタマイズしたいテンプレートを見つけます。
  2. コピーボタンをクリックします。
  3. カスタムテンプレートの名前を入力します。
  4. テンプレートをコピーをクリックします。
  5. 新しく作成されたカスタムテンプレートを編集します。

方法 2: ゼロから作成

  1. ページの上部で新しいテンプレートを追加をクリックします。
  2. テンプレート名を入力します。
  3. テンプレートタイプとしてレシートを選択します。
  4. エディタでテンプレートのコーディングを開始します。

テンプレートエディタの機能

テンプレートエディタは次の機能を提供します。

コードエディタ

  • 構文ハイライト: より良いコードの可読性のためにPHP構文ハイライトを提供
  • 行番号: 簡単なナビゲーションとデバッグ
  • 全画面編集: 気が散らない編集環境

テンプレート設定パネル

  • 言語: 適切な構文ハイライトのためにPHPに設定
  • テンプレートタイプ: レシートまたはレポートテンプレートのいずれかを選択
  • ステータス: 公開/ドラフトステータスの管理
  • 表示: テンプレートの表示を制御

テンプレートアクション

  • プレビュー: サンプルデータでテンプレートがどのようにレンダリングされるかを見る
  • アクティブとして設定: このテンプレートをPOSのデフォルトにする
  • 更新: 変更を保存
  • ゴミ箱に移動: カスタムテンプレートを削除

テンプレート構造

レシートテンプレートはHTML出力を生成するPHPファイルです。基本的な構造は以下の通りです。

<?php
/**
* Custom Receipt Template
*/

if ( ! defined( 'ABSPATH' ) ) {
exit; // Exit if accessed directly
}
?>
<!DOCTYPE html>
<html <?php language_attributes(); ?>>
<head>
<meta charset="<?php bloginfo( 'charset' ); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1">
<style>
/* Your custom CSS styles */
body { font-family: sans-serif; font-size: 14px; }
.receipt-header { text-align: center; margin-bottom: 20px; }
/* Add more styles as needed */
</style>
</head>
<body>
<!-- Your receipt content -->
<div class="receipt-header">
<h1><?php echo get_bloginfo( 'name' ); ?></h1>
<p><?php echo get_bloginfo( 'description' ); ?></p>
</div>

<!-- Order details, items, totals, etc. -->

</body>
</html>

利用可能なテンプレート変数

カスタムテンプレートを作成する際、さまざまなWordPressおよびWooCommerce関数とデータにアクセスできます。

店舗情報

  • get_bloginfo( 'name' ) - 店舗名
  • get_bloginfo( 'description' ) - 店舗のキャッチフレーズ
  • get_bloginfo( 'url' ) - 店舗のURL

注文データ

現在の注文データは、テンプレートがレンダリングされるときに標準のWooCommerce注文関数を通じて利用可能です。

WCPOS関数

POS関連のデータと機能にアクセスするために、WCPOS固有の関数(wcpos_でプレフィックスされた)を使用できます。

ベストプラクティス

テンプレート開発

  1. コピーから始める: ゼロから作成するのではなく、常にデフォルトテンプレートをコピーして開始します。
  2. 徹底的にテスト: アクティブ化する前にプレビュー機能を使用してテンプレートをテストします。
  3. バックアップを保つ: カスタムテンプレートをエクスポートするか、コードのコピーを保持します。
  4. モバイル対応: テンプレートがさまざまな画面サイズでうまく動作することを確認します。

コード品質

  1. HTMLを検証: HTMLが適切に構成されていることを確認します。
  2. 出力をエスケープ: セキュリティのためにWordPressのエスケープ関数を使用します。
  3. エラーハンドリング: PHPコードに適切なエラーチェックを含めます。
  4. コメント: 将来の参考のためにカスタマイズを文書化します。

パフォーマンス

  1. CSSを最適化: スタイルを簡潔で効率的に保ちます。
  2. PHPを最小限に抑える: テンプレート内に複雑なロジックを避けます。
  3. 印刷テスト: テンプレートがレシートプリンターでうまく機能することを確認します。

トラブルシューティング

一般的な問題

テンプレートで変更が表示されない
  • 変更を保存するために「更新」をクリックしたことを確認してください。
  • テンプレートが「アクティブ」に設定されていることを確認してください。
  • キャッシングプラグインをクリアします。
構文エラー
  • 構文ハイライトを使用して問題を特定します。
  • セミコロン、括弧、または引用符が不足していないか確認してください。
  • PHP構文を検証します。
スタイリングの問題
  • プレビューモードでCSSをテストします。
  • スタイルがレシートプリンターと互換性があることを確認します。
  • 印刷に適したデザイン原則を考慮します。
テンプレートが利用できない
  • テンプレートタイプが「レシート」に設定されていることを確認します。
  • テンプレートのステータスが「公開」であることを確認します。
  • 適切な権限があることを確認します。

ヘルプを得る

テンプレートカスタマイズに関して問題が発生した場合:

  1. テンプレートプレビューでエラーメッセージを確認します。
  2. PHPエラーのためにWordPressデバッグログを確認します。
  3. 最初にデフォルトテンプレートのコピーでテストします。
  4. AIサポート: Gemini、ChatGPT、およびClaudeなどの最新のAIツールは、これらのシンプルなWordPressテンプレートに非常に役立ちます。テンプレートコードを貼り付けて、達成したいことを説明できます。
  5. 高度なカスタマイズについては、WCPOSドキュメントを参照してください。

高度なカスタマイズ

レシートテンプレートに対してより多くの制御が必要な高度なユーザー向け:

テーマ統合

カスタムreceipt.phpファイルをテーマ内に配置することで、デフォルトテンプレートをオーバーライドできます。

your-theme/woocommerce-pos/receipt.php

フックとフィルター

WCPOSは、テンプレートのカスタマイズのためにさまざまなフックとフィルターを提供します。利用可能なオプションについては、開発者ドキュメントを参照してください。

カスタムフィールド

適切なWordPressおよびWooCommerce関数を使用して、レシートテンプレートにカスタム注文フィールド、製品属性、およびその他のメタデータを含めることができます。