Drupal字段:以编程方式插入选择列表选项


Drupal fields: Programmatically insert select list options

我有一个列表(文本)字段,其中我提供了从当前日期开始的日期列表。这些日期为用户提供了可下拉选择的选项。

我需要以编程方式提供"日期列表",以便无论它是哪一天,系统都会自动打印当前当前日期作为第一个日期。

问题是允许的值列表不支持PHP格式。谁能告诉我怎样才能完成上面列出的任务?

尝试Drupal日期模块,如果没有选项,那么您可以做的是创建表单中没有'select date element',你想用编程的方式做。

之后,通过调试form_id的'html source'获得表单的'id'。之后使用hook_form_alter(&$form, & $form_state, $form_id)

function my_form_alter(&$form, & $form_state, $form_id)  { 
 if ($form_id == 'MY_FORM_ID' ) { 
   $date_key_format =  "m/d/y";  ; 
   $date_value_format = "F j, Y, g:i a"; 
   $options = array(date($date_key_format) => date($date_value_format)); 
   for ($i = 1; $i < 10; $i++ ) { 
     $options[date($date_key_format, strtotime("+$i days"))] = date($date_value_format, strtotime("+$i days")) 
   } 
   $form['date'] = array (
     '#type' => 'select' , 
     '#title' => 'Select Date' , 
     '#options' => $options
     '#weight' => 5 //based on where you want this element position to be 

   ); 
 } 
} 

在上面的选择选项中,它将从当前日期开始并持续到从当前日期开始的第10天。