Valores possíveis em um campo CCK (Drupal)

  • Last modified: 5 de agosto de 2024
  • Reading time: 5 mins

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:

PHP
$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.