Form alter trick: Form alter views exposed forms
On:
maandag, September 20, 2010 - 18:16
Ons voorbeeld: we proberen de standaardwaarde van een filter op een bepaalde week te zetten
Ik probeerde de standaardwaarde van uw exposed filter in te stellen in:
<?php
$form['week']['#default_value'];
?>
Dat werkte niet.
In get forms dient u de $form_state['input']['week'] in te stellen. Daarnaast moet u ervoor zorgen dat de waarde nog niet verstuurd wordt, dus controleer op $_GET['week'] om de echte waarde te krijgen.
Hier is een voorbeeld van een code
<?php
/**
* Implementation of hook_form_alter()
*/
function boek_top100_form_alter(&$form, &$form_state, $form_id) {
//Sets the default top 100 week ie. the latest
if ($form_id == 'views_exposed_form' && arg(0) == 'top100') {
$result = db_result(db_query("SELECT week FROM {boek_top100} ORDER BY id DESC LIMIT 1"));
if ($_GET['week'] == '') {
$form_state['input']['week'] = $result;
}
}
}
?>
Reactie toevoegen