chore: initial snapshot of 2meet-data-optimizer-hivepress-addon v0.1.0
Baseline before backporting wp-data-optimizer v3.0.1-v3.4.6. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01TbG1keQQ7XBa7qMQY16KCY
This commit is contained in:
@@ -0,0 +1,118 @@
|
||||
<?php
|
||||
/**
|
||||
* Deprecated stub — superseded by `integrations/hivepress/` adapter family.
|
||||
*
|
||||
* Pre-v3.0.0 this file held a 242-line monolithic HivePress integration
|
||||
* (Listing/Vendor query optimizer + addon field auto-detection). The
|
||||
* integration was rewritten in v3.0.0 as a per-addon adapter family living
|
||||
* under `includes/integrations/hivepress/`:
|
||||
*
|
||||
* - Detector → `class-tmdo-hivepress-detector.php`
|
||||
* - Bootstrap → `class-tmdo-hivepress-bootstrap.php`
|
||||
* - Conflict guard → `class-tmdo-hivepress-conflict-guard.php`
|
||||
* - Adapter trait → `trait-tmdo-hp-adapter.php`
|
||||
* - Adapter intf. → `interface-tmdo-hp-adapter.php`
|
||||
* - Core adapter → `adapters/class-tmdo-hivepress-core-adapter.php`
|
||||
* - Future addons → `adapters/class-tmdo-hivepress-{addon}-adapter.php`
|
||||
*
|
||||
* `TMDO_Core::run()` now boots `TMDO_HivePress_Bootstrap::boot()` instead
|
||||
* of `( new TMDO_HivePress() )->register_hooks()`. The legacy class survives
|
||||
* here as a deprecated stub so any third-party code that calls
|
||||
* `new TMDO_HivePress()` doesn't fatal — methods route to the new adapter
|
||||
* with an `_doing_it_wrong()` notice.
|
||||
*
|
||||
* Removal target: v4.0.0.
|
||||
*
|
||||
* @package WP_Data_Optimizer
|
||||
* @since 0.3.0
|
||||
* @deprecated 3.0.0 Use TMDO_HivePress_Bootstrap + adapters instead.
|
||||
*/
|
||||
|
||||
if ( ! defined( 'ABSPATH' ) ) {
|
||||
exit;
|
||||
}
|
||||
|
||||
if ( ! class_exists( 'TMDO_HivePress' ) ) {
|
||||
|
||||
/**
|
||||
* Deprecated WPDO HivePress integration shim.
|
||||
*
|
||||
* @deprecated 3.0.0 Use TMDO_HivePress_Bootstrap + adapter family.
|
||||
*/
|
||||
class TMDO_HivePress {
|
||||
|
||||
/**
|
||||
* No-op deprecated shim — bootstrap auto-binds adapters now.
|
||||
*
|
||||
* @deprecated 3.0.0
|
||||
*/
|
||||
public function register_hooks(): void {
|
||||
if ( function_exists( '_doing_it_wrong' ) ) {
|
||||
_doing_it_wrong(
|
||||
__METHOD__,
|
||||
'TMDO_HivePress is deprecated. TMDO_HivePress_Bootstrap auto-binds adapters at plugins_loaded:5.',
|
||||
'3.0.0'
|
||||
);
|
||||
}
|
||||
// No-op: bootstrap already wired the core adapter.
|
||||
}
|
||||
|
||||
/**
|
||||
* Deprecated shim — delegates to the new core adapter when available.
|
||||
*
|
||||
* @deprecated 3.0.0 Use TMDO_HivePress_Core_Adapter::optimize_query().
|
||||
*
|
||||
* @param \WP_Query $query Query object.
|
||||
*/
|
||||
public function optimize_query( \WP_Query $query ): void {
|
||||
if ( ! class_exists( 'TMDO_HivePress_Core_Adapter' ) ) {
|
||||
return;
|
||||
}
|
||||
$adapter = class_exists( 'TMDO_HivePress_Bootstrap' )
|
||||
? TMDO_HivePress_Bootstrap::adapter_for( 'hivepress' )
|
||||
: null;
|
||||
if ( $adapter instanceof TMDO_HivePress_Core_Adapter ) {
|
||||
$adapter->optimize_query( $query );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Deprecated shim — delegates to the new core adapter when available.
|
||||
*
|
||||
* @deprecated 3.0.0 Use TMDO_HivePress_Core_Adapter::optimize_search().
|
||||
*
|
||||
* @param \WP_Query $query Query object.
|
||||
* @param array $attribute_fields HP attribute fields (unused).
|
||||
*/
|
||||
public function optimize_search( \WP_Query $query, array $attribute_fields ): void {
|
||||
if ( ! class_exists( 'TMDO_HivePress_Core_Adapter' ) ) {
|
||||
return;
|
||||
}
|
||||
$adapter = class_exists( 'TMDO_HivePress_Bootstrap' )
|
||||
? TMDO_HivePress_Bootstrap::adapter_for( 'hivepress' )
|
||||
: null;
|
||||
if ( $adapter instanceof TMDO_HivePress_Core_Adapter ) {
|
||||
$adapter->optimize_search( $query, $attribute_fields );
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* Deprecated shim — field registration is now per-adapter.
|
||||
*
|
||||
* @deprecated 3.0.0 Field registration moved to per-addon adapters.
|
||||
*
|
||||
* @param TMDO_Schema_Registry $registry Registry singleton.
|
||||
*/
|
||||
public function register_extended_fields( TMDO_Schema_Registry $registry ): void {
|
||||
unset( $registry );
|
||||
if ( function_exists( '_doing_it_wrong' ) ) {
|
||||
_doing_it_wrong(
|
||||
__METHOD__,
|
||||
'Field registration moved to per-addon adapters under includes/integrations/hivepress/adapters/.',
|
||||
'3.0.0'
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
} // end if ( ! class_exists )
|
||||
Reference in New Issue
Block a user