Merge pull request #732 from ultimatemember/feature/change_for_locations

Sort by distance
This commit is contained in:
Nikita Sinelnikov
2021-03-03 16:41:18 +02:00
committed by GitHub
2 changed files with 40 additions and 4 deletions
@@ -818,6 +818,12 @@ if ( ! class_exists( 'um\core\Member_Directory_Meta' ) ) {
global $wpdb;
/*
*
* SQL_CALC_FOUND_ROWS is deprecated as of MySQL 8.0.17
* https://core.trac.wordpress.org/ticket/47280
*
* */
$user_ids = $wpdb->get_col(
"SELECT SQL_CALC_FOUND_ROWS DISTINCT u.ID
{$this->select}
@@ -829,8 +835,38 @@ if ( ! class_exists( 'um\core\Member_Directory_Meta' ) ) {
{$this->sql_limit}"
);
$query = array(
'select' => $this->select,
'sql_where' => $sql_where,
'having' => $this->having,
'sql_limit' => $this->sql_limit,
);
$total_users = (int) $wpdb->get_var( 'SELECT FOUND_ROWS()' );
/**
* UM hook
*
* @type filter
* @title um_prepare_user_results_array_meta
* @description Extend member directory query result
* @input_vars
* [{"var":"$result","type":"array","desc":"Members Query Result"}]
* @change_log
* ["Since: 2.0"]
* @usage
* <?php add_filter( 'um_prepare_user_results_array', 'function_name', 10, 2 ); ?>
* @example
* <?php
* add_filter( 'um_prepare_user_results_array', 'my_prepare_user_results', 10, 2 );
* function my_prepare_user_results( $user_ids, $query ) {
* // your code here
* return $user_ids;
* }
* ?>
*/
$user_ids = apply_filters( 'um_prepare_user_results_array_meta', $user_ids, $query );
$pagination_data = $this->calculate_pagination( $directory_data, $total_users );
$sizes = UM()->options()->get( 'cover_thumb_sizes' );
+4 -4
View File
@@ -2518,17 +2518,17 @@ if ( ! class_exists( 'um\core\Member_Directory' ) ) {
* @change_log
* ["Since: 2.0"]
* @usage
* <?php add_filter( 'um_prepare_user_results_array', 'function_name', 10, 1 ); ?>
* <?php add_filter( 'um_prepare_user_results_array', 'function_name', 10, 2 ); ?>
* @example
* <?php
* add_filter( 'um_prepare_user_results_array', 'my_prepare_user_results', 10, 1 );
* function my_prepare_user_results( $user_ids ) {
* add_filter( 'um_prepare_user_results_array', 'my_prepare_user_results', 10, 2 );
* function my_prepare_user_results( $user_ids, $query ) {
* // your code here
* return $user_ids;
* }
* ?>
*/
$user_ids = apply_filters( 'um_prepare_user_results_array', $user_ids );
$user_ids = apply_filters( 'um_prepare_user_results_array', $user_ids, $this->query_args );
$sizes = UM()->options()->get( 'cover_thumb_sizes' );