我有一个组合框,我不知道值选项是如何填充的。方法profile_manager_get_categorized_group_fields()如何工作?
// retrieve group fields
$group_fields = profile_manager_get_categorized_group_fields();
$ramosAtuacao = array('' => '-- Selecione --');
$opcoesObjetivos = $opcoesFranquia = array();
foreach($group_fields['fields'] as $field){
switch ( $field->metadata_name ) {
case 'ramoatuacao':
$ramosAtuacao = array_merge( $ramosAtuacao, $field->getOptions() );
break;
case 'franquia':
$opcoesFranquia = $field->getOptions();
break;
}
}
和
<?php echo elgg_view("input/dropdown", array(
'name' => 'ramoatuacao',
'value' => $vars['entity']->ramoatuacao,
'options' => $ramosAtuacao
)); ?>
答案 0 :(得分:0)
首先,您在这里得到了答案:http://community.elgg.org/discussion/view/1648483/trying-understand-code
其次,阅读文件views/default/input/dropdown.php
中的评论。如果您不知道为什么此文件会映射到视图名称,请阅读http://docs.elgg.org/wiki/Engine/Views
根据问题本身,我知道你实际上要求3件事:
options
参数中传递的选项:它要放入select的值数组。如果使用options_values
,则可以传递关联数组以使标签具有不同的键$ramosAtuacao
的内容:嗯,您主要使用的是已粘贴的代码和功能实现:https://github.com/ColdTrick/profile_manager/blob/master/lib/functions.php#L330 profile_manager_get_categorized_group_fields
的结果:通过profile_manager的管理界面或通过插件挂钩取决于您想要做什么。