Recent

Multisite_SearchclassPro only

Class to handle multisite search.

Namespace: WebberZone\Better_Search\Pro
Source: includes/pro/class-multisite-search.php line 25

Methods

__construct()

Constructor.

Line: 55

public function __construct( Custom_Tables\Custom_Tables $custom_tables );
Type Name Description
Custom_Tables\Custom_Tables $custom_tables Custom Tables instance.

pre_query_flat_table()

Short-circuit the database query for flat-table Better Search queries.

Fired via posts_pre_query at highest priority so we act after all other callbacks have had a chance to run but before WP_Query hits the DB. Returning a non-null value tells WP_Query to use that as the posts array and skip running the SQL statement.

Since: 4.2.0
Line: 116

public function pre_query_flat_table( $posts, $query ): null|array;
Type Name Description
null|array $posts Null (default) or an array of WP_Post objects supplied by an earlier filter.
WP_Query $query Current query object.

Returns: null|array — Null to continue normally, empty array to cancel DB hit.

filter_posts_request()

Filter the posts request to include posts from all sites.

Since: 4.0.0
Line: 167

public function filter_posts_request( $request, $query, $instance ): string;
Type Name Description
string $request The SQL query.
WP_Query $query The WP_Query instance (passed by reference).
Better_Search_Core_Query $instance The Better_Search instance (passed by reference).

Returns: string — Updated SQL query.

prevent_recursive_query()

Prevent recursive queries by returning an empty array for nested better_search_query.

Since: 4.0.6
Line: 342

public function prevent_recursive_query( $posts, $query ): array;
Type Name Description
array $posts Array of post objects.
WP_Query $query The WP_Query instance (passed by reference).

Returns: array — Modified array of post objects.

handle_polylang_compatibility()

Handle Polylang compatibility.

Since: 4.0.6
Line: 356

public function handle_polylang_compatibility( $remove = ... );
Type Name Description
bool $remove Whether to remove the filter or not. Default is true.

validate_sites() static

Validate the sites.

Line: 377

static public function validate_sites( $sites ): int[];
Type Name Description
mixed[] $sites Array of site IDs, possibly containing invalid entries from stored options.

Returns: int[] — Array of validated site IDs.

switch_to_blog_in_loop()

Update the_post while WP_Query loops through this.

Since: 4.0.0
Line: 396

public function switch_to_blog_in_loop( $post );
Type Name Description
WP_Post $post The Post object (passed by reference).

Filter permalinks for multisite search results.

Since: 4.0.6
Line: 424

public function filter_the_permalink_for_multisite( $permalink, $current_post ): string;
Type Name Description
string $permalink The post’s permalink.
WP_Post|int $current_post Post object or post ID.

Returns: string — Modified permalink for cross-site posts.

filter_the_title_for_multisite()

Filters the post title for multisite installations.

Retrieves the correct title when displaying cross-site posts in search results.

Since: 4.0.6
Line: 474

public function filter_the_title_for_multisite( $title, $id ): string;
Type Name Description
string $title The post title.
int $id The post ID.

Returns: string — Filtered post title.

loop_end()

Restore current blog on loop end.

Since: 4.0.0
Line: 502

public function loop_end(  );

filter_the_posts()

Hydrate results manually from the custom table and return WP_Post objects.

Since: 4.2.0
Line: 523

public function filter_the_posts( $posts, $query, $instance ): WP_Post[]|array;
Type Name Description
WP_Post[] $posts Posts.
WP_Query $query WP_Query object.
Better_Search_Core_Query $instance Better_Search_Core_Query instance.

Returns: WP_Post[]|array — Array of posts.

render_page()

Render the network admin page.

Since: 4.0.0
Line: 747

public function render_page(  );

ajax_run_collation_fix()

AJAX handler to run collation fix for a given site.

Line: 1000

public function ajax_run_collation_fix(  );