apply_filters( 'wpml_unfiltered_admin_string', mixed $default_value, string $option_name )
- Tipo
- filter
- Categoria
- Recuperar conteúdo localizado
- Versão do WPML
- 3.2.3-dev
Descrição
O WPML Tradução de Strings filtra as opções de configuração de tema/plugin para retornar as traduções de seus valores no idioma atual.
Isso significa que, em uma instalação do WordPress com os idiomas do WPML definidos, por exemplo, com o inglês como principal e o alemão como idioma secundário, você pode esperar que as traduções em alemão sejam os valores recuperados ao chamar:get_option('{theme_name}_settings'); enquanto o idioma atual for o alemão. Então, enquanto o idioma atual for o inglês, os valores em inglês serão exibidos.
No entanto, isso também significa que, quando o valor de uma opção é atualizado com: update_option('{theme_name}_settings', $new_value);o valor da opção será atualizado em ambos os idiomas. Isso pode não ser sempre desejável.
É aqui que o filtro acima é útil. O filtro permite recuperar o valor de uma opção contornando os filtros do WPML Tradução de Strings. O que é retornado é o valor no idioma em que é recuperado, para que operações posteriores realizadas, como a atualização do valor no banco de dados, não afetem outros idiomas além daquele com o qual você está trabalhando.
Argumentos
- $default_value
- (mixed) (Obrigatório) O valor a ser retornado caso a string não exista
- $option_name
- (string) (Opcional) O nome da opção a ser recuperada. Espera-se um nome sem escape SQL.
Exemplo de uso
Para o exemplo a seguir, imagine que você está visualizando um idioma diferente do idioma padrão.
O valor da opção que você está recuperando está salvo como um array serializado. Você deseja atualizar um único par chave-valor no array e salvá-lo no banco de dados. Você espera que apenas o idioma atual seja afetado.
Exemplo
// retrieve option value is current language
$a = apply_filters( 'wpml_unfiltered_admin_string', get_option( 'my_option_name' ), 'my_option_name' );
// some operations ...
$a['number']++;
//update the value for the current language only
update_option('my_option_name', $a); Hooks relacionados
wpml_media_url, wpml_media_id, force_suppress_filters, wpml_get_translated_slug, wpml_home_url, wpml_translate_single_string, wpml_translate_string, wpml_elements_without_translations, wpml_permalink, wpml_element_link