[EDITAR]
Eu estava errado na minha resposta abaixo. Não vou excluí-lo (ainda) porque recebi 7 votos positivos sobre isso :). Mas eu estou editando para que todos tenham a chance de retirar seu voto (até mesmo o voto negativo, porque eu mereço).
Resposta original
Ha! .. eu encontrei.
Resposta curta: você não pode!
Resposta longa : você deve conseguir fazer isso se alguém souber a diferença entre uma matriz e um objeto.
Em teoria, isso deve funcionar
<field1>
....
</field1>
<field2>
....
<depends>
<field1>
<value>1|2</value>
<separator>|</separator>
</field1>
</depends>
</field2>
Mas no código que lida com a dependência, Mage_Adminhtml_Block_System_Config_Form::initFields
na linha 366 existe esse código
if (isset($dependent['separator'])) {
$dependentValue = explode((string)$dependent['separator'], $dependentValue);
}
$dependent
é sempre um objeto, portanto $dependent['separator']
nunca é definido.
Se eu mudar o código acima para
if (isset($dependent->separator)) {
$dependentValue = explode((string)$dependent->separator, $dependentValue);
}
tudo funciona sem problemas.
Eu acho que não posso mudar o núcleo apenas por uma extensão, então eu tenho que criar 2 campos em vez de 1, um para cada valor field1
ou criar um js personalizado que lida com isso e adicioná-lo à página de configuração.