get_elements() as $element ) { $out .= $element->get(); } if ( empty( $out ) || ! $this->settings->show_wrapper ) { return $out; } $cr = $this->settings->preserve_spacing ? "\n" : ''; $out = sprintf( '<%1$s id="%2$s" class="%3$s" aria-label="%4$s">%5$s', $this->get_nav_tag(), esc_attr( $this->settings->unique_id ), esc_attr( implode( ' ', $this->get_wrapper_classes() ) ), esc_attr( __( 'Choose a language', 'polylang' ) ), "{$cr}" ); return "{$cr}{$out}{$cr}"; } /** * Returns an instance of `Element\Nav`. * * @since 3.9 * * @param PLL_Language $language Instance of `PLL_Language`. * @return Element */ protected function get_element( PLL_Language $language ): Element { return new Element( $language, $this->settings, $this->links ); } }