bbp_get_user_languages_dropdown( array $args = array() )

Return the select element used to save a user’s language.


Description Description


Parameters Parameters

$args

(Optional) See wp_dropdown_languages()

Default value: array()


Top ↑

Return Return

(string)


Top ↑

Source Source

File: includes/users/template.php

	function bbp_get_user_languages_dropdown( $args = array() ) {

		// Get user language
		$user_id = ! empty( $args['user_id'] )
			? bbp_get_user_id( $args['user_id'], false, false )
			: bbp_get_displayed_user_id();

		// Get user locale
		$user_locale = ! empty( $user_id )
			? get_userdata( $user_id )->locale
			: 'site-default';

		// Get all languages
		$languages = get_available_languages();

		// No locale for English
		if ( 'en_US' === $user_locale ) {
			$user_locale = '';

		// Fallback to site-default if there is a mismatch
		} elseif ( '' === $user_locale || ! in_array( $user_locale, $languages, true ) ) {
			$user_locale = 'site-default';
		}

		// Don't pass user ID in
		unset( $args['user_id'] );

		// Parse arguments
		$r = bbp_parse_args( $args, array(
			'name'                        => 'locale',
			'id'                          => 'locale',
			'selected'                    => $user_locale,
			'languages'                   => $languages,
			'echo'                        => false,
			'show_available_translations' => false,
			'show_option_site_default'    => true
		), 'user_languages_dropdown' );

		// Get the markup for the languages drop-down
		$retval = wp_dropdown_languages( $r );

		// Filter & return
		return apply_filters( 'bbp_get_user_languages_dropdown', $retval, $r, $args );
	}

Top ↑

Changelog Changelog

Changelog
Version Description
2.6.0 Introduced.

Top ↑

User Contributed Notes User Contributed Notes

You must log in before being able to contribute a note or feedback.