0a3b05789eed132004b72474d5aadf0c11287a8a
AddOn 先前 tests=0。新增: - composer.json(dev 依賴 + phpunit/phpcs script) - phpunit.xml(failOnWarning=true) - tests/bootstrap.php:直接 require 核心 plugin 的 unit bootstrap,避免複製 ~700 行 WP stub,再載入本 AddOn 的類別;補 trait wrapper 與自動 WPDO_ alias (includes/back-compat-aliases.php 掛在 plugins_loaded:7,PHPUnit 下不會跑) - tests/unit/ 25 個測試 + WpdbMockTrait(自 A 移植) 生產碼一併修對外契約:interface-tmdo-hp-adapter.php 改為先宣告空的 WPDO_HivePress_Adapter、再讓 TMDO_HivePress_Adapter extends 它(PHP 無法 class_alias 介面,只有繼承能讓 instanceof WPDO_HivePress_Adapter 對 implements TMDO_ 名稱的 adapter 成立)。與核心 interface-entity-adapter.php 同一模式。這也讓第三方自訂 adapter 用舊介面名仍可通過核心檢查。 145 tests / 357 assertions GREEN Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TbG1keQQ7XBa7qMQY16KCY
2meet Data Optimizer — HivePress AddOn
為 HivePress + 12 個官方擴充提供完整反 EAV 整合(最大 AddOn,~7,400 行)。
What it does
從 wp-data-optimizer v2.16.0 提煉的 HivePress 整合層,包含 13 個 adapter、7 個 HPCT 攔截器、5 個查詢攔截器、bootstrap、admin tab、CLI namespace。
13 HP Adapter 全清單
| Adapter | 對應 HP 擴充 | 行數 |
|---|---|---|
| Core | hivepress | 407 |
| Reviews | hivepress-reviews | 146 |
| Bookings | hivepress-bookings | 159 |
| Messages | hivepress-messages | 263 |
| Memberships | hivepress-memberships | 169 |
| Requests | hivepress-requests | 267 |
| Favorites | hivepress-favorites | 234 |
| Statistics | hivepress-statistics | 130 |
| Tags | hivepress-tags | 84 |
| SEO | hivepress-seo | 76 |
| Social Links | hivepress-social-links | 115 |
| Blocks | hivepress-blocks | 73 |
| Marketplace | hivepress-marketplace | 135 |
7 HPCT Interceptor
reviews / messages / favorites / memberships / requests / statistics / listing-meta
5 Query Interceptor (pre_get_posts 改寫)
reviews / messages / memberships / requests / listing-meta
額外組件
- HP transient filter(
_transient_hp_*postmeta → wp_options 路由,避免 postmeta 脹大) - HPCT (HP Custom Tables) import 工具(v2.0.0 取代 HPCT 之相容路徑)
- HP attribute bridge / cron optimizer / suitability scorer / benchmark / REST
- HivePress comment router
Requirements
- WordPress ≥ 6.0
- PHP ≥ 8.1
- 2meet-data-optimizer ≥ 0.1.0
- hivepress ≥ 1.7.22 (支援
_alias/_externalfield convention)
Installation
# 啟用前確認 HP 已啟用
wp plugin list | grep hivepress
# 安裝 + 啟用
wp plugin install /path/to/2meet-data-optimizer-hivepress-addon-v0.1.0.zip --activate
# 驗證 13 adapter 全 bound
wp tmdo hivepress detect
# Benchmark vs HP 預設
wp tmdo hivepress benchmark --post-type=hp_listing --samples=200
為什麼選擇單一 AddOn(不拆 13 sub-AddOn)
| 維度 | 單一 AddOn ✓ | 13 sub-AddOn ✗ |
|---|---|---|
| 啟動開銷 | 一次偵測 | 13 次重複偵測 |
| 依存管理 | 單一 ZIP | WP 依存解析複雜 |
| Feature flags | 統一管理 | 跨 sub-AddOn 同步 |
| UX | 一鍵啟用 | 分次啟用 |
CLI
wp tmdo hivepress detect
wp tmdo hivepress benchmark
wp tmdo hivepress import-hpct --dry-run
wp tmdo hivepress score # 8 維 anti-EAV 評分
wp tmdo hivepress doctor
Phase
Phase 3 — 與 WooCommerce AddOn 與 LatePoint AddOn 同期 ship。風險最高的 phase。
License
GPL-2.0-or-later
Description
Languages
PHP
100%