Valores possíveis em um campo CCK (Drupal)

  • Tempo de leitura: 2 min.

A API do core do Drupal é uma das melhores que conheço, muito bem detalhada, além de fácil de usar. Infelizmente nem sempre é tão fácil achar funções úteis dos módulos disponíveis na comunidade, mesmo os principais como CCK ou Views. Por vezes é preciso buscar pelo termo que queremos no google ou então dar aquela estudada no código.

Outro dia esbarrei em uma dessas funções úteis que nem sempre a gente sabe que existe, a content_allowed_values. Ela retorna através de um array todas as opções possíveis de campos do tipo “select”. Um exemplo:

$content_field = content_fields('field_exemplo'); 
$allowed_values = content_allowed_values($content_field);

Se no campo de opções válidas do select você informou:
ex_1|Exemplo 1
ex_2|Exemplo 2
ex_3|Exemplo 3
A variável $allowed_values vai receber um array, onde as chaves serão os valores antes do pipe (ex_1, ex_2 e ex_3) e os valores serão o que estiver depois do pipe (Exemplo 1, Exemplo 2, Exemplo 3).

Esta função pode ser útil, por exemplo, quando é preciso listar todos os valores possíveis em algum lugar mas não é possível usar uma view, seja porque seria um argumento muito complicado de montar ou porque ainda não há conteúdo em todas as opções.

Felipe Elia

Associate Director of Platform Engineering na 10up, WordPress Core Contributor, Global Polyglots Mentor na comunidade internacional do WordPress e Locale Manager na comunidade WordPress Brasil.