no te preocupes, somos 2 los maldormidos y con funcionamiento extraño >D
finalmente pude resolverlo, era bastante simple pero no lograba verlo. De todas formas me guardo tu codigo, ya que intente hacer eso con el slider del sitio y no lo logre (tuviendo que crear una categoria que si un post la tiene, lo manda al slider)
te agradezco mucho tu aporte..
esta es mi solucion..
hice algunos echo y me di cuenta que el problema era que el output daba "array". Asique hice un implode:
$cats_selected = implode(', ', get_settings($value['id']));
para luego un nuevo condicional con in_array:
if ( in_array($cat->cat_ID, get_settings($value['id']))) {
Código:
<?php
$cats_selected = implode(', ', get_settings($value['id']));
?>
<select id="<?php echo $value['id']; ?>" name="tmt_lista_categorias[]" multiple="multiple" size="10">
<?php
$arg = array(
'type' => 'post',
'child_of' => 0,
'parent' => '',
'orderby' => 'name',
'order' => 'ASC',
'hide_empty' => 0,
'taxonomy' => 'category');
$cats = get_categories($arg);
foreach($cats as $cat) { ?>
<option value="<?php echo $cat->cat_ID; ?>" <?php if ( in_array($cat->cat_ID, get_settings($value['id']))) {
echo ' selected="selected"';
} ?>><?php echo $cat->cat_name; ?></option>
<?php } ?>
</select>
de nuevo muchas gracias por la ayuda y la paciencia.. saludos y a descansar!