GC_Community_Events::get_request_args()

最后更新于:2021-11-26 23:01:30

GC_Community_Events::get_request_args( string$search=”, string$timezone=”)

Builds an array of args to use in an HTTP request to the w.org Events API.

参数

$search

(string) (Optional) City search string.

Default value: ”

$timezone

(string) (Optional) Timezone string.

Default value: ”

响应

(array) The request args.

源文件

文件: gc-admin/includes/class-gc-community-events.php

	protected function get_request_args( $search = '', $timezone = '' ) {
		$args = array(
			'number' => 5, // Get more than three in case some get trimmed out.
			'ip'     => self::get_unsafe_client_ip(),
		);

		/*
		 * Include the minimal set of necessary arguments, in order to increase the
		 * chances of a cache-hit on the API side.
		 */
		if ( empty( $search ) && isset( $this->user_location['latitude'], $this->user_location['longitude'] ) ) {
			$args['latitude']  = $this->user_location['latitude'];
			$args['longitude'] = $this->user_location['longitude'];
		} else {
			$args['locale'] = get_user_locale( $this->user_id );

			if ( $timezone ) {
				$args['timezone'] = $timezone;
			}

			if ( $search ) {
				$args['location'] = $search;
			}
		}

		// Wrap the args in an array compatible with the second parameter of `gc_remote_get()`.
		return array(
			'body' => $args,
		);
	}