wp_set_all_user_settings()WP 2.8.0

Private. Sets all user interface settings.

Внутренняя функция — эта функция рассчитана на использование самим ядром. Не рекомендуется использовать эту функцию в своем коде.

Хуков нет.

Возвращает

true|false|null. True if set successfully, false if the current user could not be found. Null if the current user is not a member of the site.

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

wp_set_all_user_settings( $user_settings );
$user_settings(массив) (обязательный)
User settings.

Заметки

  • Global. Массив. $_updated_user_settings

Список изменений

С версии 2.8.0 Введена.

Код wp_set_all_user_settings() WP 6.5.2

function wp_set_all_user_settings( $user_settings ) {
	global $_updated_user_settings;

	$user_id = get_current_user_id();
	if ( ! $user_id ) {
		return false;
	}

	if ( ! is_user_member_of_blog() ) {
		return;
	}

	$settings = '';
	foreach ( $user_settings as $name => $value ) {
		$_name  = preg_replace( '/[^A-Za-z0-9_-]+/', '', $name );
		$_value = preg_replace( '/[^A-Za-z0-9_-]+/', '', $value );

		if ( ! empty( $_name ) ) {
			$settings .= $_name . '=' . $_value . '&';
		}
	}

	$settings = rtrim( $settings, '&' );
	parse_str( $settings, $_updated_user_settings );

	update_user_option( $user_id, 'user-settings', $settings, false );
	update_user_option( $user_id, 'user-settings-time', time(), false );

	return true;
}