Desejo exibir uma tabela simples sob um campo de formulário como parte do texto de ajuda para esse campo (campo de arquivo para ser exato). Estou sendo totalmente mental ou não há realmente nenhuma maneira fácil de alterar as tags html permitidas para esta área de texto? No momento eu tenho exibido:
Instructions to present to the user below this field on the editing form.
Allowed HTML tags: a b big code del em i ins pre q small span strong sub sup tt ol ul li p br img
Se não houver uma maneira fácil, qual é a próxima maneira mais fácil de fazer isso?
ATUALIZAR:
O Clive criou uma ótima maneira de fazer isso abaixo com um módulo personalizado. Você também pode adicionar isso usando ctools para tornar o texto de ajuda recolhível da seguinte maneira:
// Implement hook_field_widget_form_alter()
function MYMODULE_field_widget_form_alter(&$element, &$form_state, &$context) {
// If some condition is matched based on the element provided...
if (isset($element[0]) && $element[0]['#field_name'] == 'field_test') {
// Alter the description using your more permissive set of tags
$reworked = filter_xss($context['instance']['description'], _MYMODULE_field_filter_xss_allowed_tags());
$element[0]['#description'] = theme('ctools_collapsible', array('handle' => 'Help text', 'content' => $reworked, 'collapsed' => TRUE));
}
}
// Provide a more permissive set of tags to be used with filter_xss()
function _MYMODULE_field_filter_xss_allowed_tags() {
// Merge the new set of allowed tags with the less permissive defaults
$new_tags = array('table', 'thead', 'tbody', 'tfoot', 'tr', 'th', 'td');
return array_merge(_field_filter_xss_allowed_tags(), $new_tags);
}