WPSEO_Upgrade::get_option_from_database()protectedYoast 1.0

Retrieves the option value directly from the database.

Метод класса: WPSEO_Upgrade{}

Хуков нет.

Возвращает

int|Строку|true|false|float|Массив<Строку|int|true|false|float>. The content of the option if exists, otherwise an empty array.

Использование

// protected - в коде основоного (родительского) или дочернего класса
$result = $this->get_option_from_database( $option_name );
$option_name(строка) (обязательный)
Option to retrieve.

Код WPSEO_Upgrade::get_option_from_database() Yoast 24.9

protected function get_option_from_database( $option_name ) {
	global $wpdb;

	// Load option directly from the database, to avoid filtering and sanitization.
	// phpcs:disable WordPress.DB.DirectDatabaseQuery.NoCaching -- Reason: No relevant caches.
	// phpcs:disable WordPress.DB.DirectDatabaseQuery.DirectQuery -- Reason: Most performant way.
	$results = $wpdb->get_results(
		$wpdb->prepare(
			'SELECT %i FROM %i WHERE %i = %s',
			[ 'option_value', $wpdb->options, 'option_name', $option_name ]
		),
		ARRAY_A
	);

	if ( ! empty( $results ) ) {
		return maybe_unserialize( $results[0]['option_value'] );
	}

	return [];
}