=== KantanPro ===
Contributors: KantanPro
Tags: business, order management, customer management, invoice, report, staff chat, mobile responsive
Requires at least: 5.0
Tested up to: 6.9.1
Requires PHP: 7.4
Stable tag: 1.2.87
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html

スモールビジネス向けの仕事効率化システム。受注・顧客・サービス・協力会社・レポート・スタッフチャットまで一元管理。

== 説明 ==

KantanProは、WordPress上で以下の業務を一元管理できる多機能プラグインです。

**主要機能：**
- **6つの管理タブ**（仕事リスト・伝票処理・顧客・サービス・協力会社・レポート）
- **受注案件の進捗管理**（7段階：受注→進行中→完了→請求→支払い→ボツ→見積中）
- **受注書・請求書の作成・編集・PDF保存**（個別・一括出力対応）
- **顧客・サービス・協力会社のマスター管理**（検索・ソート・ページネーション）
- **スタッフチャット**（自動スクロール・削除連動・AJAX送信・キーボードショートカット）
- **モバイル対応UI**（gap→margin対応、iOS/Android実機対応、タッチ操作最適化）
- **部署管理機能**（顧客ごとの部署・担当者管理）
- **利用規約管理機能**（同意ダイアログ・管理画面・バージョン管理・表示対象の最適化）
- **シンプル更新システム**（WordPress標準の更新システムに最適化）
- **セキュリティ機能**（XSS/CSRF/SQLi/権限管理/ファイル検証/ノンス/prepare文）
- **セッション管理最適化**（REST API・AJAX・内部リクエスト対応）
- **ページネーション機能**（全タブ・ポップアップ対応・一般設定連携）
- **ファイル添付機能**（ドラッグ&ドロップ・複数ファイル・自動クリーンアップ）
- **完了日自動設定機能**（進捗変更時の自動処理）
- **納期警告機能**（期限管理・アラート表示）
- **商品管理機能**（価格・数量・単位管理・データマイグレーション対応）
- **スタッフアバター表示機能**（ログイン中スタッフの可視化）
- **プラグインリファレンス機能**（包括的なヘルプシステム）
- **寄付機能**（Stripe決済・セキュアな決済処理・進捗管理・自動メール送信）
- **自動マイグレーション機能**（データベース更新の安定化）
- **データベース整合性チェック機能**（データ品質向上）
- **消費税対応機能**（軽減税率・税区分対応の強化）
- **パフォーマンス最適化機能**（キャッシュ・クエリ最適化・メモリ効率化）
- **協力会社職能選択の改善**（ページネーション・検索・ソート機能の強化）
- **アイコンのSVG化**（Material SymbolsからSVGアイコンへの完全移行）
- **進捗アイコンのSVG化**（仕事リストタブの進捗フィルターアイコンをSVG化）
- **消費税対応の改善**（税率計算・表示の最適化）
- **受注書のコスト項目更新処理の改善**（リアルタイム保存・値変更検知・エラーハンドリング強化）
- **受注書のコスト項目発注メールの改善**（適格請求書対応・詳細な税額内訳・計算根拠明示）
- **請求書プレビューが閉じない問題を修正**
- **パフォーマンスの向上**（キャッシュシステム最適化・データベースクエリ効率化・メモリ使用量最適化・画像最適化・JavaScript・CSS最適化・セッション管理最適化・Ajax通信最適化）
- **マイグレーション中にエラー解消**（データベース更新処理の安定化・エラーハンドリング強化）
- **利用規約の表示対象を修正**（より適切な対象への変更）
- **URL生成問題１−１の修正**（動的パーマリンク取得による環境非依存のURL生成）
- **モバイル表示の改善**（レスポンシブデザイン強化・タッチ操作最適化・モバイル専用UI改善）
- **更新チェック問題テスト**（更新システムの安定性向上・バグ修正・パフォーマンス最適化）
- **KantanPro License Managerプラグインの連携１−１**（ライセンス管理システムとの統合・ライセンス検証機能・ライセンス情報管理・レート制限機能・セキュアなAPI通信）
- **ダミーデータツール機能**（管理画面でのテストデータ作成・顧客・サービス・協力会社・受注データの一括生成）
- **レポート機能**（売上レポート・顧客レポート・サービスレポート・協力会社レポート・期間別分析・グラフ表示機能・データエクスポート機能・ライセンス認証連携）

== インストール ==

1. プラグインを `/wp-content/plugins/` にアップロード、または管理画面からインストール
2. プラグインを有効化（自動マイグレーションが実行されます）
3. 固定ページに `[ktpwp_all_tab]` を挿入
4. 管理画面「KantanPro」から基本設定を行ってください

== 基本的な使い方 ==

1. **固定ページに `[ktpwp_all_tab]` を挿入**すると、6つのタブが表示されます
2. **各タブで顧客・サービス・協力会社・受注書・レポート等を管理**
3. **伝票編集時は「サービス選択」ポップアップから商品を追加**
4. **受注書・請求書はPDFで出力可能**（個別・一括対応）
5. **モバイルでも快適に操作可能**（レスポンシブデザイン）
6. **スタッフチャットでリアルタイムコミュニケーション**（Ctrl+Enter送信対応）
7. **ヘルプボタンで使用方法を確認**
8. **顧客管理で部署・担当者を管理**
9. **利用規約に同意してから利用開始**（表示対象の最適化）
10. **ファイル添付でメール送信も可能**
11. **寄付機能でプラグイン開発をサポート**

== 管理タブの詳細 ==

**1. 仕事リストタブ**
- 受注案件の一覧表示・検索・フィルタリング機能
- 進捗状況による絞り込み
- 顧客名・案件名での検索
- 納期・金額でのソート
- ページネーション機能

**2. 伝票処理タブ**
- 受注書・請求書の作成・編集
- PDF出力機能（個別・一括対応）
- サービス選択ポップアップ
- スタッフチャット機能
- ファイル添付機能

**3. 顧客タブ**
- 顧客情報の登録・編集・削除
- 部署・担当者管理
- 顧客別の受注履歴表示
- 検索・ソート・ページネーション

**4. サービスタブ**
- サービス・商品の登録・編集・削除
- 価格・数量・単位管理
- カテゴリー別管理
- 検索・ソート・ページネーション

**5. 協力会社タブ**
- 協力会社情報の登録・編集・削除
- 職能・スキル管理
- 協力会社別の案件履歴
- 検索・ソート・ページネーション

**6. レポートタブ**
- 月別売上レポート
- 進捗状況の統計
- グラフ表示機能
- データエクスポート機能

== スタッフチャット機能 ==
- リアルタイムメッセージ送信（AJAX対応）
- 自動スクロール機能
- キーボードショートカット（Ctrl+Enter）
- メッセージ削除連動機能
- ログイン中スタッフのアバター表示

== 部署管理機能 ==
- 顧客ごとの部署・担当者管理
- 部署別のメールアドレス設定
- 請求書への部署情報反映
- 部署の追加・編集・削除機能

== 利用規約管理機能 ==
- 利用規約の同意ダイアログ表示
- 管理画面での利用規約編集
- 利用規約バージョン管理
- 同意状態の追跡

== シンプル更新システム ==
- WordPress標準の更新システムに完全対応
- 軽量で安定性を重視した設計
- 自動マイグレーション機能搭載

== ページネーション機能 ==
- 全タブでの統一されたページネーション
- サービス選択ポップアップ対応
- 一般設定による表示件数制御
- レスポンシブデザイン対応

== ファイル添付機能 ==
- ドラッグ&ドロップによるファイル添付
- 複数ファイル同時添付（最大50MB）
- 対応形式：PDF、画像、Office文書、圧縮ファイル
- 自動クリーンアップ機能
- リアルタイムプレビュー

== 完了日自動設定機能 ==
- 進捗ステータス変更時の自動処理
- 完了時の自動日付設定
- 受注以前への変更時の自動クリア
- 仕事リスト・受注書詳細両対応

== 納期警告機能 ==
- 期限間近の案件への警告マーク表示
- リアルタイム更新対応
- ツールチップでの残り日数表示

== 商品管理機能 ==
- 商品名・単価・数量・単位の管理
- DECIMAL型による精密な価格計算
- デフォルト値設定（数量：1、単位：式）
- インデックス最適化によるパフォーマンス向上
- データマイグレーション機能（職能→商品管理への移行）

== スタッフアバター表示機能 ==
- ログイン中スタッフのアバター一覧表示
- 現在のユーザーを強調表示
- レスポンシブデザイン対応
- ツールチップでユーザー名表示
- セッション管理との連携

== プラグインリファレンス機能 ==
- 包括的なヘルプシステム
- 機能別詳細ガイド
- トラブルシューティング情報
- キャッシュ機能付きの高速表示
- モーダルベースの使いやすいUI

== 寄付機能 ==
- Stripe決済による安全な寄付システム
- 複数の寄付金額オプション
- 寄付進捗のリアルタイム表示
- 寄付完了後の自動メール送信
- 管理画面での寄付履歴確認
- フロントエンド通知システム

== 自動マイグレーション機能 ==
- データベース更新の自動化
- 安全なデータ移行
- バージョン管理による段階的更新
- エラーハンドリングとロールバック機能

== データベース整合性チェック機能 ==
- データ品質の自動チェック
- 不整合データの検出と修復
- 定期的な整合性確認
- データベースパフォーマンスの最適化

== 消費税対応機能 ==
- 税制モードは「消費税あり / 消費税なし」の2択
- 消費税なしを選ぶと税率/税額列や内訳表示を自動で非表示
- 消費税ありの場合：一律税率を設定すると全明細に適用、未入力なら複数税率運用
- 軽減税率（8%・10%）対応
- 内税・外税の管理
- 税区分ラベルの統一
- 消費税計算ロジックの最適化（切り上げ）
- 請求書・受注書・メール本文での税表示の一貫制御

== パフォーマンス最適化機能 ==
- **キャッシュシステム**（トランジェント・オブジェクトキャッシュ）
- **データベースクエリ最適化**（インデックス・JOIN最適化）
- **メモリ使用量最適化**（効率的なデータ構造）
- **画像最適化**（WebP変換・圧縮）
- **JavaScript最適化**（非同期読み込み・バンドル化）
- **CSS最適化**（不要なスタイル削除・圧縮）
- **セッション管理最適化**（自動クローズ・メモリ効率化）
- **Ajax通信最適化**（バッチ処理・レスポンス圧縮）

== セキュリティ機能 ==
- **SQLインジェクション防止**（prepare文・バインド変数）
- **XSS・CSRF対策**（サニタイズ・エスケープ・ノンス）
- **ファイルアップロード検証**（MIME型・サイズ制限）
- **権限管理・安全なDBアクセス**（ロールベースアクセス制御）
- **ノンス・トークンによるフォーム保護**（CSRF攻撃防止）
- **REST API制限**（ログインユーザーのみアクセス可能）
- **セッション管理最適化**（内部リクエスト・API呼び出し時の自動クローズ）
- **gap→margin対応によるUI崩れ防止**（iOS/Android実機対応）

== システム要件 ==
 
== 開発者向け: ライセンス認証（KLM連携）実装・調査ガイド ==

- **対象**: 任意のプラグインから KLM（KantanPro License Manager）へのライセンス認証
- **参考**: [KantanPro公式サイト](https://www.kantanpro.com/)

--- 基本仕様 ---
- **エンドポイント（維持）**: POST `/wp-json/ktp-license/v1/verify`
- **Content-Type**: `application/x-www-form-urlencoded`
- **パラメータ**:
  - `license_key`（必須）
  - `site_url`（任意だが推奨。紐付け比較あり）
  - `plugin_version`（任意）
- **レスポンス（例）**:
  - 成功: `{ success:true, valid:true, message, data }`
  - 失敗: `{ success:false, valid:false, message, error_code }`

--- 実装サンプル（cURL） ---
`--data-urlencode` でURLエンコード必須。記号やパイプ(`|`)が含まれても安全に送信されます。
```bash
curl -sS -X POST \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'license_key=PREFIX-123456-ABCDEFGH-1234' \
  --data-urlencode 'site_url=https://example.com' \
  --data-urlencode 'plugin_version=1.2.3' \
  https://www.kantanpro.com/wp-json/ktp-license/v1/verify
```

--- 失敗しやすいポイント（必読） ---
1) **エンコード形式ミス**
   - JSON送信や未エンコード送信でキーが破損（例: `+`→空白、`|`欠落）
2) **文字種の揺れ**
   - 大文字/小文字、全角/半角、ゼロ幅スペース、Unicodeハイフン（‐, –, —）
   - 原則「英大文字・数字・ハイフン」基準。大文字化・不可視文字除去・ダッシュ統一を推奨
3) **site_url 不一致**
   - 比較は正規化（http/https、www有無、末尾スラッシュ差は無視）。別サイトなら `site_mismatch`
4) **事前バリデーションが厳しすぎる**
   - クライアント側は「非空」または緩和。KLM側に最終判定を委譲
5) **レート制限/タイムアウト**
   - レート制限: 1時間に100回。指数バックオフ/再試行を実装
6) **中継/セキュリティ層**
   - WAF/CDN/プロキシが `|`, `<`, `>` をブロック/改変。ログで到達ペイロードを確認

--- 期待挙動（受け入れ基準） ---
- **生成と検証の一致（100%）**
- **記号を含む既存キー**はKLM側フォールバックで受理可能（`invalid_format`は原則返さない）
- **site_url** は正規化比較で誤検知最小化
- 失敗時は必ず `message` と `error_code` を返却

--- 切り分けのために添えてほしい情報（報告テンプレ） ---
- **license_key**: `XXXX-XXXXXX-XXXX...`（先頭以外は一部マスク可）
- **site_url**: 実際に送った値
- **plugin_version**: 例 `2.3.37`
- **実行時刻**（JST ±10分）
- **送信方式**: `application/x-www-form-urlencoded`（YES/NO）
- **エンコード方法**: `--data-urlencode` 相当（YES/NO）
- **レスポンス原文**（HTTPステータス/JSON）
- **ネットワーク**: CDN/WAF/プロキシの有無

--- デバッグ用（任意） ---
到達と内部判定を可視化します。
```bash
curl -sS -X POST \
  -H 'Content-Type: application/x-www-form-urlencoded' \
  --data-urlencode 'license_key=PREFIX-123456-ABCDEFGH-1234' \
  --data-urlencode 'site_url=https://example.com' \
  https://www.kantanpro.com/wp-json/ktp-license/v1/debug
```

--- 実装チェックリスト ---
- [ ] フォームエンコード（`--data-urlencode`）で送信している
- [ ] 送信前にトリム/大文字化/不可視文字除去を実施
- [ ] 事前バリデーションは「非空のみ」または緩和（KLMへ委譲）
- [ ] レスポンスの `success/valid/error_code` を正しく判定
- [ ] レート制限時のバックオフ/再試行を実装
- [ ] WAF/CDNの例外設定（該当リクエストパス/メソッド/パラメータ）

--- 備考 ---
- `site_url` は KLM側で正規化比較（http/https、www、末尾スラッシュ差は一致扱い）
- 既存キー（記号含む）は KLM側フォールバックで最大限受理（`invalid_format` は原則出ません）

* WordPress 5.0 以上（推奨：最新版）
* PHP 7.4 以上（推奨：PHP 8.0以上）
* MySQL 5.6 以上 または MariaDB 10.0 以上
* 推奨メモリ: 256MB 以上
* 推奨PHP拡張: GD（画像処理用）

= 1.2.87 - 2026年05月24日 =
* （自動要約）`git log v1.2.86..HEAD`（本バージョンのメタデータ更新コミット直前まで）：`58adf41 更新バッジ表示機能のスクリプトを修正`。`git diff v1.2.86..58adf41 --stat`：`includes/class-ktpwp-update-checker.php`（+10/-2）
* ヘッダー更新バッジ：`ktpwp_update_badge_available` の渡し方を `wp_localize_script` から `wp_add_inline_script` + `wp_json_encode` に変更し、フロント側で真偽値が正しく評価されるよう修正

= 1.2.86 - 2026年05月20日 =
* （自動要約）`git log v1.2.85..HEAD`（本バージョンのメタデータ更新コミット直前まで）：`93cbcfd 定期更新チェック機能を追加`。`git diff v1.2.85..93cbcfd --stat`：`includes/class-ktpwp-update-checker.php`・`js/ktpwp-update-balloon.js`・`ktpwp.php`（+131/-28）
* 定期更新チェック：`maybe_run_scheduled_update_check()` と `maybe_check_on_ktpwp_page()` を追加し、KantanPro ページ表示時にチェック間隔を守って更新確認を実行
* ヘッダー更新バッジ：`ktpwp_poll_header_update` AJAX とフロント側ポーリングを追加し、管理画面アクセスなしでもバッジ表示を同期

= 1.2.85 - 2026年05月20日 =
* （自動要約）`git log v1.2.84..HEAD`（本バージョンのメタデータ更新コミット直前まで）：`d0ec7e5 ヘッダー更新バッジ表示機能を追加`。`git diff v1.2.84..d0ec7e5 --stat`：`css/ktpwp-update-balloon.css`・`includes/class-ktpwp-update-checker.php`・`js/ktpwp-update-balloon.js`・`ktpwp.php`（+118/-8）
* ヘッダー更新チェック：更新あり時に refresh ボタンへ赤丸バッジを表示（「後で」で吹き出しを閉じてもバッジは残る）
* 更新チェッカー：`has_header_update_badge()` を追加し、通知設定・権限・保存済み更新情報からバッジ表示可否を判定

= 1.2.84 - 2026年05月20日 =
* （自動要約）`git log v1.2.83..HEAD`（本バージョンのメタデータ更新コミット直前まで）：`4ef1925 一括請求のテーブルヘッダーのスタイルを修正`。`git diff v1.2.83..4ef1925 --stat` は `js/ktp-client-invoice.js` のみ（+1/-1）
* 一括請求プレビュー：明細テーブルヘッダーに `ktp-bulk-items-table-head` クラスを付与し、背景色・下線色を KantanBiz 相当のピンク系（`#ffeef1` / `#fecdd3`）に調整

= 1.2.83 - 2026年05月20日 =
* （自動要約）`git log v1.2.82..HEAD`（本バージョンのメタデータ更新コミット直前まで）：`6b6467a 一括請求の締日表示機能を追加`。`git diff v1.2.82..6b6467a --stat` は `includes/class-ktpwp-ajax.php` のみ（+51/-1）
* 一括請求：月別グループの「締日」表示を、案件の完了日ではなく顧客マスタの締め日と対象年月から算出（「末」「末日」対応、締め日未設定時は「—」）

= 1.2.82 - 2026年05月20日 =
* （自動要約）`git log v1.2.81..HEAD` およびタグ `v1.2.81` 対比の `git diff` は空。機能コードの変更はなく、バージョン番号とリリースノートのみ更新
* 配布・更新確認用のメンテナンスリリース（WordPress 標準更新の `zipball_url` 配布経路の動作確認を含む）

= 1.2.81 - 2026年05月08日 =
* （自動要約）作業開始時点の `git log v1.2.80..origin/main` は空。タグ `v1.2.80` 対比の差分は `includes/class-ktpwp-update-checker.php` とバージョン/リリースノート更新
* WordPress標準更新：GitHub `zipball_url` の展開フォルダ `KantanPro-KantanPro-<hash>` を更新前に正規フォルダ `KantanPro` へ補正し、`active_plugins` の `KantanPro/ktpwp.php` と不一致になって更新後に無効化されるリスクを修正
* WordPress標準更新：post_install 段階でもインストール先が正規フォルダでない場合に `KantanPro` へリネームする保険処理を追加

= 1.2.80 - 2026年05月08日 =
* （自動要約）`git log v1.2.79..origin/main` は空。タグ `v1.2.79` 対比の手元差分は `css/progress-select.css`・`css/styles.css`・`ktpwp.php`
* 仕事リスト：モバイル表示で本文を省略せず行内折り返しし、納期・完了日・進捗の入力群も項目単位で折り返すよう調整
* ヘッダー：プラグインロゴ画像を KantanProEX と同じ固定 `images/default/icon.png` 表示に統一し、旧保存オプションや遅延読み込みによる差し替えを抑止

= 1.2.79 - 2026年05月03日 =
* （自動要約）v1.2.78 以降の変更：`includes/class-ktpwp-client.php`・`includes/class-ktpwp-i18n.php`・`languages/ktpwp-en_US.po`・`languages/ktpwp.pot`・`languages/ktpwp-en_US.mo`・`ktpwp.php`・`readme.txt`・`create_release_zip.sh`・`create_plugin_zip.sh`・`plugin_config.json`
* 顧客リスト：ステータス「対象外」/ Inactive 行で「【対象外】」ラベルを行末に表示（従来の先頭「[削除済み]」表記を整理）
* 英語UI：上記ラベルの翻訳を「[Excluded]」に更新

= 1.2.78 - 2026年05月02日 =
* （自動要約）`git log v1.2.77..HEAD`（GitHub `main`）は空。タグ `v1.2.77` 対比の差分は `includes/class-ktpwp-i18n.php`・`js/ktp-client-invoice.js`
* 一括請求プレビュー：KantanBiz 相当の税率別内訳サフィックス（内税/外税・レート別税額）を請求金額・案件合計・月別合計に表示（税ポリシー廃止・統一・列非表示と連動）
* 一括請求プレビュー：レイアウトを再構成（タイトル・挨拶文・サマリーボックス、明細を HTML 表、ゼブラ行色は一般設定の奇偶色を利用）
* 一括請求プレビュー：部署・担当者行、進捗「請求済」バッジ、動的文言の HTML エスケープ、自社情報・振込案内の外枠二重化を避けるアンラップ処理を追加
* 英語UI：「件」「税額」「部署」「ご担当者名」「代表窓口」「請求済（入金予定日超過）」など請求プレビュー関連の翻訳キーを追加（`class-ktpwp-i18n.php`）

= 1.2.77 - 2026年05月02日 =
* （自動要約）GitHub `main` はタグ `v1.2.76` と同一コミットのため追加コミットなし。手元差分（`v1.2.76` クローンとのファイル差分）を反映
* 一括請求書：顧客タブの請求候補 AJAX で `client_address` を郵便番号・都道府県・市区町村・番地・建物から組み立て（`class-ktpwp-ajax.php` の `format_client_address_for_invoice_preview`）
* 一括請求書：印刷と PDF 保存をボタン分離。印刷は長形3号窓向け余白・宛名絶対配置、PDF はプレビュー相当の A4 レイアウト（`ktp-client-invoice.js`）
* 英語UI：ボタン「PDF保存」用の固定文言翻訳を追加（`class-ktpwp-i18n.php`）

= 1.2.76 - 2026年05月02日 =
* メンテナンスリリース（v1.2.75 以降、GitHub main 上に追加コミットなし。バージョン表記の更新と配布フロー継続）

= 1.2.75 - 2026年05月02日 =
* 請求候補取得で無効な完了日（0000-00-00 系）を SQL・PHP の両方で除外
* 請求プレビューで完了日のゼロ日付を「未設定」と表示（formatInvoiceCompletionDate）
* 顧客タブに宛名印刷ボタン・長形3号窓明封筒の余白案内・iframe 印刷（printClientAddressLabel）を追加
* 協力会社タブに宛名印刷（printSupplierAddressLabel）とコントローラー左右配置を追加
* 宛名印刷ボタン用のスタイルとモバイル（767px 以下）表示を追加

= 1.2.74 - 2026年05月01日 =
* 無料版停止通知とEX誘導文言の翻訳キーを追加し、多言語表示を改善

= 1.2.73 - 2026年05月01日 =
* 無料版の起動判定を見直し、EX誤判定でショートコード登録前に停止する問題を修正

= 1.2.72 - 2026年05月01日 =
* 更新直後の有効化が失敗した場合に次回管理画面で再試行するフェイルセーフを追加

== 変更履歴 ==

= 1.2.71 - 2026年05月01日 =
* 更新後の再有効化で実在するプラグインキーを優先解決し、有効化されないケースを修正

= 1.2.70 - 2026年05月01日 =
* 更新後の再有効化判定をベースネーム正規化で行うようにし、無効化のまま残る問題を修正

= 1.2.69 - 2026年05月01日 =
* 更新結果画面で案内フラグを先に消費しないようにし、「更新しました。」で停止する問題を修正

= 1.2.68 - 2026年05月01日 =
* 更新直後は設定ページへ直接遷移せず、プラグイン一覧を経由して権限エラーを避けるよう修正

= 1.2.67 - 2026年05月01日 =
* プラグイン更新完了画面からKantanPro設定ページへ自動遷移する処理を修正

= 1.2.66 - 2026年04月30日 =
* KantanProEXが有効な場合は無料版を必ず停止モードにし、設定メニューの重複表示を防止

= 1.2.65 - 2026年04月30日 =
* 更新後に管理画面を再読み込みし、一般設定ページへ戻るよう改善

= 1.2.64 - 2026年04月30日 =
* 既存バージョンからの更新救済のため、GitHub の source archive 経由で更新できる配布方式に変更

= 1.2.63 - 2026年04月30日 =
* 多言語化対応を強化し、テキストドメインの修正、エラーメッセージの翻訳関数対応、英語翻訳ファイルの追加を実施
* ダミーデータのカテゴリー名を英語化し、翻訳環境での表示を改善
* ユーザー表示名のローカライズ機能を追加し、スタッフチャットの表示名を修正

= 1.2.62 - 2026年04月30日 =
* WooCommerce 連携で請求先氏名を姓・名から整形して取得するよう改善
* WooCommerce の郵便番号から数字以外を除去し、7桁の郵便番号を `123-4567` 形式へ補正する処理を追加

= 1.2.61 - 2026年04月29日 =
* 無料版のレポートタブを KantanProEX への案内表示として整理し、タイトルバー内に利用不可メッセージを表示するよう改善
* 受注書のメール送信履歴・案件ファイルに KantanProEX 移行案内を追加し、折りたたみ表示とボタンスタイルを調整
* 有料版機能の表示を鍵SVGアイコンに統一し、レポートタブ名にも鍵アイコンを表示

= 1.2.60 - 2026年04月29日 =
* プラグインバージョンを 1.2.60 に更新（`ktpwp.php` ヘッダー）
* コミット履歴を確認し、無料版メインプラグインのリリース情報を更新（`readme.txt` / `README.md`）

= 1.2.59 - 2026年04月28日 =
* 受注書概要の受付日をカレンダー入力で編集できるようにし、登録日（created_at / time）へ反映されるよう改善
* 受注書概要の日付ラベル（受付・約束納期・希望納期・納品予定日・完了日）をカレンダーと同一行・縦中央揃えに統一
* 日付入力欄の文字サイズを14pxに統一し、一覧・詳細の視認性を改善

= 1.2.58 - 2026年04月28日 =
* 仕事リストの顧客詳細リンクを廃止し、行クリックで受注書詳細へ遷移する操作に統一
* 仕事リストの受付日表示を年月日のみに変更し、フリーワード検索の絞り込み条件に受注書メモを追加
* 受注書概要の案件名幅・進捗配置・日付入力幅・文字サイズを調整し、モバイル表示のレイアウトを改善

= 1.2.57 - 2026年04月28日 =
* ショートコードの条件文を修正し、分岐判定の安定性を向上
* フィルター利用方法のコメントを追加し、拡張時の可読性と保守性を改善

= 1.2.56 - 2026年04月27日 =
* コミット履歴をもとに無料版メインプラグインのリリース情報を更新
* `readme.txt` と `README.md` のバージョン表記・変更履歴を最新化

= 1.2.55 - 2026年04月27日 =
* プラグインの説明文を更新し、初期案内の内容を整理
* システム名の取得方法を修正し、表示の安定性を向上

= 1.2.54 - 2026年04月27日 =
* 受注書のメモ機能を追加し、運用時の補足情報を保存しやすく改善
* システム説明文を更新し、初期表示の案内内容を調整
* スタイルシートを整理し、画面表示の保守性を向上
* AJAX 処理を改善し、通信時の安定性を向上

= 1.2.53 - 2026年04月27日 =
* メール送信ポップアップにCC入力欄を追加（`includes/class-ktpwp-order-ui.php`・`js/ktp-email-popup.js`）
* 送信処理でCC・宛先の検証と自動設定を実装（`includes/class-ktpwp-ajax.php`）。宛先以外のメールアドレスを適切に扱えるよう改善

= 1.2.52 - 2026年04月27日 =
* `[ktpwp_all_tab]` ショートコード登録のフォールバックを追加（`init` 優先度20）。`KTPWP_Index` 経由の登録が漏れた場合でも固定ページでショートコードが動作するよう改善
* 無料版のレポートタブを KantanProEX（有料版）への案内表示に変更（`kantanAllTab` および `class-ktpwp-shortcodes.php` のレポート取得を統一）
* 管理画面から「ライセンス設定」サブメニューを廃止
* バックアップ画面を KantanProEX への案内に変更。エクスポート／リストアの直接 POST はブロックして案内へリダイレクト

= 1.2.51 - 2026年04月27日 =
* 無料版と有料版の移行競合対策を強化（有料版起動時の無料版停止モード判定を追加）
* 一般設定の「ロゴマーク」「システム名」「システムの説明」を固定化し、ユーザーが変更できないように改善

= 1.2.50 - 2026年04月19日 =
* プラグイン一覧の削除確認ダイアログを、更新操作では表示しないようさらに限定（`upgrade-plugin`・`update-selected`・`update.php` を含むリンクは除外、`plugins.php` 上の `action=delete` / `action=delete-selected` のみカスタム確認）。プラグイン更新時はデータベースの業務データは従来どおり保持

= 1.2.49 - 2026年04月19日 =
* プラグイン一覧で「更新」（`upgrade-plugin`）を実行する際、削除用のカスタム確認ダイアログ（データ保持設定に関する文言）が誤って表示される問題を修正。`plugins.php` の `action=delete` / `action=delete-selected` のリンクにのみ確認を表示するよう変更

= 1.2.48 - 2026年04月19日 =
* プラグイン更新後に管理画面へ表示されていた「データベースの反映だけ未完了」「KantanPro設定でデータベースを更新してください」旨の案内通知を表示しないよう変更（`ktpwp_upgrade_error` トランジェントの設定・表示を削除）。詳細エラーは従来どおりオプションに記録

= 1.2.47 - 2026年04月19日 =
* アセット読み込みの最適化と拡張性の向上（`includes/class-ktpwp-assets.php`）
    * フロントでは `ktpwp_should_enqueue_frontend_assets` フィルターで読み込み可否を拡張可能にし、KantanPro ページ以外では干渉防止・コンソール抑制・AJAX 設定・SVG スタイル出力を行わないようガード
    * 管理画面では KantanPro 設定・Woo 連携など必要な画面のみ本体 CSS/JS を読み込み（他の管理画面での無駄な読み込みを削減）。`ktpwp_is_kantanpro_admin_screen` フィルターで判定を拡張可能に
    * サービス／協力会社／顧客／レポート／リストタブでは jQuery UI Sortable を読み込まないよう条件分岐
    * `ktp-cost-items` のクエリストリング付きバージョン指定をやめ、`filemtime` ベースのキャッシュブレークに変更
    * 一時的だった「全ページでフロントアセット読み込み」デバッグを撤去し、本来の KantanPro ページ判定に戻す
    * AJAX 設定出力時の `console.log` は `KANTANPRO_VERBOSE_CONSOLE` 有効時のみ

= 1.2.46 - 2026年04月18日 =
* レポートタブのレイアウトを協力会社タブと揃える修正
    * `css/ktp-report.css` の `#report_content { margin-top: 8px !important; }` がタブパネル全体に効き、メインタブと本文の間に隙間が出る問題を修正（`.ktp_plugin_container .tab_content#report_content` にスコープし margin/padding 上を 0 に）
    * `styles.css` で `#report_content` を受注書用の下マージン付きルールから分離し、協力会社等のタブと同じ余白ルールに統一
    * レポートのサブタブ行（`generate_controller`）を協力会社と同様、外側 `.controller` にインライン style を付けず `.ktp-report-controller` でレイアウト
    * モバイル・印刷用の `#report_content` 指定を本文カード（`.ktp-report-print-area`）中心に整理
* コントローラー周りの過剰な全タブ共通 `!important` 上書きを整理

= 1.2.45 - 2026年04月18日 =
* サービス／協力会社タブのメモ欄クリック時にブラウザがフリーズする問題を多層で解消
    * 他プラグイン（Gomoku Game 等）の $(document) 委譲・MutationObserver による干渉を、KantanProページでのみ自動除外（ktpwp_interfering_asset_handles フィルターで拡張可能）
    * サービス／協力会社／顧客／レポート／リストタブでは受注書専用の重いJS（ktp-invoice-items 等）を読み込まないよう制御
    * メモ textarea に CSS containment（contain: layout style）と独立合成レイヤー化を適用し、レイアウト再計算を閉じ込め
    * Grammarly 等のブラウザ拡張・翻訳による介入を抑止する属性（spellcheck, data-gramm 他）を textarea に付与
    * KTPWP プレフィックス付き console.log をデフォルトで抑制し、DevTools 起動時のメインスレッド詰まりを防止（localStorage / URLパラメータ / 定数で verbose 復活可）
    * 各タブ専用JS（ktp-invoice-items / ktp-cost-items / ktp-client-delete-popup / ktp-delivery-dates）に対象DOM不在時の早期returnを追加
* プラグイン削除時のデータ保持設定機能を追加
    * 「一般設定」に「プラグイン削除時のデータ保持設定」セクションを追加し、「データを残す（推奨）／完全削除」を選択可能
    * プラグイン一覧画面の KantanPro 行に現在の削除モードをバッジ表示、横の「変更」リンクから設定画面へ直接ジャンプ
    * 「削除」リンク押下時に、現在のモードに応じた確認ダイアログを表示（完全削除時は復元不可の警告）
    * uninstall.php を新設し、「完全削除」選択時に ktp_* テーブル、ktp_*/ktpwp_* 系オプション・トランジェント、ユーザーメタ、投稿メタ、KantanPro系cronを一括削除（マルチサイト対応）
* 詳細フォームをリスト列より前面に固定し、タブの pointer-events を撤去
* タブ表示をサーバー側クラスで確定し、兄弟セレクタのみに依存しないよう堅牢化
* サービス・協力会社のレイアウトを顧客タブに合わせて統一
* タブ内の重複IDを解消し、タブレイアウトの重なりを防止
* View_Table 内の setcookie を headers_sent でガードし、ヘッダー送出後の警告を防止
* タブパネルをラジオと兄弟DOMに戻し全タブ表示を修正。ショートコードの tab_name を POST 優先にし、ベースURLの page_id 取得を改善

= 1.2.44 - 2026年04月18日 =
* 新規インストール判定（ktpwp_is_new_installation）の論理不整合を修正。メインの ktp_* テーブルにデータがあるのにオプション未設定等で新規扱いになる問題を解消
* マイグレーション履歴オプションの検索を `ktp_migration_%` にも対応（実際のフラグ名と一致）

= 1.2.43 - 2026年04月18日 =
* タブビュー（TabsView）で各タブの本体HTMLを `#list_content`〜`#report_content` の要素内に配置し、CSS（`#tab:checked ~ #*_content`）と整合。協力会社タブなどで本文が真っ白に見える問題を修正
* タブのアクティブ表示で `tab_name` を POST 優先とし、ショートコード側のタブコンテンツ生成と一致させる

= 1.2.42 - 2026年04月18日 =
* 協力会社職能の追加・削除POSTを template_redirect でテーマ出力より前に処理し、投稿名パーマリンク等でヘッダー送出後にリダイレクトできず真っ白になる問題を修正（早期処理時のエラーは GET パラメータで通知）

= 1.2.41 - 2026年04月18日 =
* 協力会社職能の追加・削除フォームに tab_name / data_id を付与し、POST 時も協力会社タブとして確実に処理されるよう改善
* 職能追加・削除後のリダイレクトを強化（Referer 欠如時は HTTP_HOST + REQUEST_URI で組み立て、tab_name・data_id を明示、nocache_headers を付与）

= 1.2.40 - 2026年04月18日 =
* 協力会社タブで職能の追加・削除後に画面が真っ白になる問題を修正（リダイレクト先をフルURLで組み立て、wp_safe_redirect に統一）

= 1.2.39 - 2026年04月18日 =
* 新規インストール等で協力会社職能テーブル（ktp_supplier_skills）が作成されず職能を追加できない問題を修正（プラグイン有効化時のテーブル作成、未作成時の自己修復、コスト項目用AJAX対応）

= 1.2.38 - 2026年04月08日 =
* 中央バナーのキャッシュキーを修正し、enabledフラグの判定ロジックを改善

= 1.2.37 - 2026年04月08日 =
* KTP Bannerの配信条件を修正し、中央バナー設定の有効化チェックを追加

= 1.2.36 - 2026年04月08日 =
* 中央バナー設定に配布用画像URL、リンクURL、代替テキストの設定項目を追加し、バナー表示のフォールバック処理を改善
* 初回有効化後の管理画面リダイレクト機能を追加し、リライトルールの再生成処理を追加

= 1.2.35 - 2026年03月28日 =
* バナー表示のスタイルを改善

= 1.2.34 - 2026年03月27日 =
* 中央バナー設定を追加（設定画面・REST API配信ルートを実装）
* ヘッダー上バナー表示を改善（中央設定優先・外部JSON参照対応・旧ktp-banner設定との互換維持）

= 1.2.33 - 2026年03月27日 =
* ページネーションとフッターの間に外部プラグインの差し込み領域を追加
* ヘッダー上にバナー表示機能を追加し、ショートコードからの描画を改善

= 1.2.32 - 2026年03月21日 =
* 印刷機能を改善（チャートのボーダー設定削除、印刷時のスタイル復元と表示一貫性向上）

= 1.2.31 - 2026年03月21日 =
* 印刷機能を改善（チャートの印刷時スタイル復元、ボーダー設定調整、表示一貫性向上）

= 1.2.30 - 2026年03月20日 =
* 印刷機能を改善（プレビュー／ポップアップUIを削除し、印刷処理を直接実行）
* 印刷データ作成・取得失敗時のエラーハンドリングを強化（アラート表示を追加）
* 印刷ボタンラベルを「印刷」に統一し、関連JavaScript処理を更新

= 1.2.29 - 2026年03月20日 =
* 振込先口座情報を請求書・見積書に追加（設定オプション対応）
* 自社情報ボックスHTML生成とAjaxレスポンス反映を改善

= 1.2.28 - 2026年03月19日 =
* 印刷用スタイルを改善（ヘッダー・フッター位置調整、リスト表示最適化、余白設定）
* 印刷用スタイルに警告バッジのCSSを追加（警告マークの表示強化、印刷時の可読性向上）

= 1.2.27 - 2026年03月19日 =
* 納期・入金予定日（支払期日）超過の警告表示を改善（請求日超過・支払期日超過の警告バッジ追加、表示ロジックの修正）
* 印刷機能を強化（隠しiframeでの印刷ダイアログ、ファイル名生成・サニタイズ、ラベルを「印刷する」に変更、全件取得オプション追加）
* 検索機能のプレースホルダーを改善（入力なし時に「フリーワード」表示、aria-labelでアクセシビリティ向上）
* 仕事リスト行に顧客会社名リンクを追加（顧客タブへのリンク実装、スタイル改善）

= 1.2.26 - 2026年03月17日 =
* 印刷ポップアップの閉じるボタンのイベントバインディングを修正（無名関数を使用して可読性を向上）

= 1.2.25 - 2026年03月17日 =
* レポートタブの顧客・サービス売上TOP5表示を改善（データがない場合のメッセージ追加、期間デフォルトを「all_time」に変更）
* レポートタブの印刷機能を強化（印刷用JavaScript追加、グラフキャンバスのスタイル調整、背景色に応じた可読性確保）
* 仕事リストの印刷ボタン機能を改善（印刷対象エリアの追加、印刷用JavaScriptの読み込み処理を実装）

= 1.2.24 - 2026年03月17日 =
* フリーワード検索機能を追加（検索結果表示メソッドの実装、コントローラーのレイアウト調整、検索フォームの追加）

= 1.2.23 - 2026年03月17日 =
* マイグレーションファイルの出力を抑制し、ダッシュボードへのリダイレクト機能を削除
* エラーハンドリングを改善し、出力バッファの管理を追加

= 1.2.22 - 2026年03月17日 =
* データベース更新通知メッセージの文言を統一（旧文言が残っている場合に新文言に置き換える処理を追加）

= 1.2.21 - 2026年03月17日 =
* プラグイン更新直後にダッシュボードへリダイレクトする機能を追加
* データベース更新通知のメッセージを改善（KantanPro設定ページへのリンクを追加、ユーザーへの案内を明確化）

= 1.2.20 - 2026年03月17日 =
* データベース更新通知の表示を改善（KantanPro設定ページでのみ表示するように修正、メッセージのフォーマットを簡素化、ボタンのスタイルを調整）

= 1.2.19 - 2025年03月15日 =
* 売上台帳PDF生成機能の改善（自社名の取得と表示を追加、月別売上サマリーのレイアウト修正、テーブル罫線の統一、JavaScriptスタイルの調整）
* ダークモード表示を改善

= 1.2.18 - 2025年03月15日 =
* モバイルのレポートグラフ表示を改善

= 1.2.17 - 2025年03月15日 =
* 警告バッチ：受注を追加

= 1.2.16 - 2025年03月15日 =
* WooCommerce連携：税率の取得を追加
* 支払いタイミングのセレクタを追加

= 1.2.15 - 2025年03月15日 =
* コスト項目の金額合計と利益を即時計算・表示する機能を追加（利益表示の更新ロジックを修正）

= 1.2.14 - 2025年03月15日 =
* 完了日保存失敗を修正

= 1.2.13 - 2025年03月15日 =
* WooCommerce対応調整

= 1.2.12 - 2025年03月15日 =
* WooCommerce対応完了

= 1.2.11 - 2025年03月15日 =
* WooCommerceの注文がKantanProに同期されない原因を調査・対応

= 1.2.10 - 2025年03月15日 =
* WooCommerce連携を追加（WooCommerce読み込み時にKantanProへ受注を自動追加、クラス存在チェックと連携クラスの初期化を実装）
* 翻訳の早期読み込みに関するNoticeを抑制するフィルターを追加（WooCommerce関連プラグインでのリダイレクト失敗を防ぐため、_load_textdomain_just_in_timeのエラートリガーを無効化）

= 1.2.9 - 2025年03月15日 =
* プラグイン更新結果画面での通知表示を改善（更新直後に「更新が利用可能です」と表示されないように条件を追加）

= 1.2.8 - 2025年03月15日 =
* 「次にやること」を更新画面の上部（admin_notices）に表示するよう変更

= 1.2.7 - 2025年03月15日 =
* 納期警告判定の改善（不正な日付をスキップする処理を追加）
* 前入金済ラベルの追加（案件情報に前入金済ラベルを表示）

= 1.2.6 - 2025年03月15日 =
* プラグイン更新後の案内機能を追加（マイグレーション成功時に「次にやること」を表示、管理画面フッターに案内メッセージ追加、エラーメッセージをユーザー向けに改善）

= 1.2.5 - 2025年03月15日 =
* マイグレーション状態チェックの条件を改善（KantanPro設定ページでの重複表示を避けるため表示条件を追加）

= 1.2.4 - 2025年03月15日 =
* DB更新

= 1.2.3 - 2025年03月15日 =
* 前入金済対応
* 請求書プレビュー修正

= 1.2.2 - 2025年02月19日 =
* 進捗更新機能を改善
  - メール送信後に完了日を含むレスポンスを返すように変更し、フロントエンドでの進捗表示をリアルタイムで更新
  - AJAX設定を統一し、コードの可読性を向上
* 進捗更新機能を強化
  - メール送信後に進捗を自動更新し、完了日を実行日で記録
  - AJAXによる進捗フォームの送信処理を改善し、ユーザーが進捗を柔軟に変更可能に
* 受注書でのメール送信バグを修正

= 1.2.1 - 2025年02月17日 =
* 発注済みのコスト項目の更新機能を強化
  - Ajax処理でのデータベース更新を新旧形式に対応
  - UI表示を「に発注済み」に変更
  - 発注メール送信後にコスト項目を自動更新する機能を追加
* 検索機能の改善
  - リダイレクト処理を更新し、検索結果が見つかった場合にno_resultsパラメータを削除
  - 関連するクラスでのリダイレクトURLの整形を統一

= 1.2.0 - 2025年02月17日 =
* 検索機能の改善
  - リダイレクト処理を更新し、検索結果が1件の場合にフォームを閉じて詳細を表示するように変更
  - no_results用パラメータをリダイレクトから削除

= 1.1.9 - 2025年02月17日 =
* 検索機能の改善
  - リダイレクト処理にno_resultsパラメータを追加し、該当なしメッセージの表示を強化
  - 複数結果表示のためのHTML構造をhidden divに変更し、スクリプトで読み取る方式に更新
  - リダイレクト処理を協力会社タブと同様の方式に統一

= 1.1.7 - 2026年02月16日 =
* 検索機能の改善（未入力時のリダイレクト処理と該当なしメッセージの表示を追加）

= 1.1.6 - 2026年02月16日 =
* 検索機能の改善（検索モードのメッセージ表示とGETリクエストの安全性向上）
* サービスタブの検索バグを修正

= 1.1.5 - 2026年02月16日 =
* サービスタブの検索機能に関する不具合を修正

= 1.1.4 - 2026年02月16日 =
* 発注書メール送信の不具合を修正
* 顧客・サービス・協力会社タブの検索機能に関する不具合を修正

= 1.1.3 - 2025年02月15日 =
* コスト項目フォーム内の受注ID取得ロジックを改善

= 1.1.2 - 2026年01月30日 =
* 受注書のタブの上のみワーニング表示を修正
* フッターの無効な利用規約テキストリンクを削除
* データリストア機能のUI改善
  - リストア処理の進行状況を表示するプログレスバーを追加
  - ユーザー体験を向上させるための視覚的なフィードバックを強化

= 1.1.1 - 2025年09月24日 =
* AJAXハンドラーの重複登録防止機能を追加
  - 重複登録によるエラーを防止し、システムの安定性を向上
  - ログ出力を改善し、デバッグモード時のAjaxリクエスト監視を強化
  - ログレベルを追加して本番環境でのログ出力を制御
  - パフォーマンスの向上とメモリ使用量の最適化

= 1.1.0 - 2025年09月20日 =
* 管理メニューのアイコンを更新
  - データツールのアイコンをデータベースエクスポートから金色の星に変更
  - 視覚的な強調を追加し、ユーザーの注目を集めるように改善
* バックアップ機能のUI改善
  - 設定ページのバックアップ機能に関するメッセージとボタンのテキストを更新
  - 視覚的な強調を追加し、ユーザーに対する呼びかけを強化
  - ライセンス設定の案内を明確化
* システム名と説明の更新
  - 設定ページでのシステム名を「KantanPro」に変更
  - システムの説明を「個人事業主・フリーランス・小規模ビジネスのための売管理システムです。」に変更
* バックアップ機能のライセンスチェックを追加
  - 設定ページにライセンスの有効性を確認する機能を実装
  - 無効な場合はライセンス購入を促すメッセージを表示
* データリストア機能の実装
  - インポート機能をリストアに変更し、関連する処理とUIを更新
  - 既存データの削除処理を追加
  - リストア成功/失敗時の通知を実装
* バックアップ機能の名称変更
  - データ処理ページをバックアップページに改名
  - 関連するメニュータイトルを更新

= 1.0.31 - 2025年09月09日 =
* AJAX設定の統一化の改善
  - 不要なajaxConfigの取得を削除
  - コードの簡素化を図る
  - パフォーマンスの向上

= 1.0.30 - 2025年09月09日 =
* AJAX設定の統一化
  - AJAX URLとnonceの取得方法を一元化
  - デバッグログを改善
  - コードの可読性と保守性を向上
* ライセンス認証の実装ガイドをreadme.txtに追加
  - ライセンスキーの形式チェックを軽減
  - JavaScriptでの許容文字チェックを実装
  - エラーメッセージを改善
* プラグインバージョンの動的定義を実装
  - フッターの利用規約リンク表示をクラスで特定するように改善
  - 既存のリンクチェック機能を強化

= 1.0.29 - 2025年09月07日 =
* ライセンス管理クラスの改善
  - ライセンスキーの正規化処理を追加
  - APIリクエストのエラーログを強化
  - AJAXハンドラでのnonce検証を厳格化
  - 失敗時のフォールバック処理を実装
* キャッシュ管理クラスと関連JavaScriptファイルを削除し、プラグインの軽量化を図る
* レポート機能の修正と改善
  - レポート表示の安定性向上
  - データ処理の最適化

= 1.0.28 - 2025年01月27日 =
* ヘルプのリンク先を修正
* ファイル・クラス名の統一を実施
* 受注書プレビュー印刷を閉じる際のバグ修正

= 1.0.26 - 2025年08月14日 =
* 消費税制モード修正

= 1.0.25 - 2025年08月13日 =
* サーバー移転対応
  - サーバー移転時のためのデータ処理機能を追加（エクスポート/インポート補助、URL/パス置換、エンコード正規化、ドライラン、ログ出力）

= 1.0.23 - 2025年08月11日 =
* 消費税モード対応
  - 税制モード「消費税あり / 消費税なし」の切替を追加
  - 税率/税額列や内訳表示の自動表示制御
  - 請求書・受注書・メール本文の税表示を一貫制御

= 1.0.22 - 2025年08月09日 =
* ダミーデータツールの改善

= 1.0.21 - 2025年01月31日 =
* ダミーデータツールの改善
  - テストデータ作成機能の最適化
  - データ生成処理の安定化
  - ユーザビリティの向上

= 1.0.20 - 2025年01月31日 =
* 自動マイグレーション機能の改善
  - データベース更新処理の安定化
  - エラーハンドリングの強化
  - マイグレーション安全性の向上
  - バージョン管理の最適化

= 1.0.19 - 2025年01月31日 =
* 更新チェック問題修正
* リポジトリ名を修正（KantanPro/KantanPro-a- → KantanPro/KantanPro）

= 1.0.18 - 2025年08月05日 =
* 更新チェック問題修正
* リポジトリ名を修正（KantanPro/KantanPro-a- → KantanPro/KantanPro）
* ダミーデータ作成スクリプトの配布対応

= 1.0.16 - 2025年08月06日 =
* 協力会社のエラーを修正

= 1.0.15 - 2025年08月05日 =
* ライセンス無効時のレポートタブ修正

= 1.0.14 - 2025年08月04日 =
* 自動マイグレーション機能の改善

= 1.0.13 - 2025年8月4日 =
* 自動マイグレーション機能の改善

= 1.0.12 - 2025年8月4日 =
* ライセンスステータスの改善
* ライセンス無効中のレポート表示の改善

= 1.0.10(a) - 2025年8月2日 =
* ３桁カンマ問題の修正
* サービス選択からの入力改善

= 1.0.9(a) - 2025年8月2日 =
* ダミーデータツールの改善

= 1.0.7(a) - 2025年8月1日 =
* ダミーデータツールの改善
* 詳細タイトルの表示改善

= 1.0.6(a) - 2025年8月1日 =
* ダミーデータツールの改善
* ライセンスキー設定の表示改善

= 1.0.4(a) - 2025年7月31日 =
* レポート機能の追加・改善
  - 売上レポート機能の実装
  - 顧客レポート機能の実装
  - サービスレポート機能の実装
  - 協力会社レポート機能の実装
  - 期間別分析機能の実装
  - グラフ表示機能の実装（Chart.js対応）
  - データエクスポート機能の実装
  - ライセンス認証連携機能の実装
  - レポートセレクター機能の実装
  - リアルタイムデータ更新機能の実装

= 1.0.2(a) - 2025年7月30日 =
* ダミーデーターツール改善

= 1.0.1(a) - 2025年7月30日 =
* ダミーデーターツール実装
* 基本的レポート機能実装

= 1.0.0(a) - 2025年7月29日 =
* ktpa開発開始

== よくある質問 ==

**Q: プラグインの動作が重い場合は？**
A: パフォーマンス最適化機能により、キャッシュシステムやデータベースクエリの最適化が自動的に行われます。それでも重い場合は、サーバーのメモリ設定を確認してください。

**Q: モバイルで表示が崩れる場合は？**
A: gap→margin対応により、iOS/Android実機での表示崩れを防止しています。最新のブラウザを使用してください。

**Q: データベースエラーが発生した場合は？**
A: 自動マイグレーション機能により、データベースの更新が自動的に行われます。プラグインを再有効化してください。

**Q: セキュリティは大丈夫ですか？**
A: XSS・CSRF・SQLインジェクション対策、ファイルアップロード検証、権限管理など、包括的なセキュリティ機能を実装しています。

== スクリーンショット ==

1. 管理タブ画面
2. 受注書編集画面
3. スタッフチャット画面
4. モバイル対応画面
5. レポート画面



== アップグレード通知 ==

プラグインの更新は、WordPress標準の更新システムで自動的に通知されます。