Crear menú desplegable con taxonomías enlazadas

  • Autor Autor Juanjo87
  • Fecha de inicio Fecha de inicio
J

Juanjo87

Gamma
Diseñador
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Hola, pues tengo creadas unas taxonomías, y necesito crear un menú donde me muestren las taxonomías por ejemplo:


tengo la taxonomía creada llamada genero y dentro de ella tengo, acción, terror.....

pues necesito crear un dropdown o menú que me aparezca GENERO y al darle me aparezca, acción, terror....

e conseguido crear el dropdown de esta forma

PHP:
<?php
function fjarrett_custom_taxonomy_dropdown( $taxonomy, $orderby = 'date', $order = 'DESC', $limit = '-1', $name, $show_option_all = null, $show_option_none = null ) {
	$args = array(
		'orderby' => $orderby,
		'order' => $order,
		'number' => $limit,
	);
	$terms = get_terms( $taxonomy, $args );
	$name = ( $name ) ? $name : $taxonomy;
	if ( $terms ) {
		printf( '<select name="%s" class="postform">', esc_attr( $name ) );
		if ( $show_option_all ) {
			printf( '<option value="0">%s</option>', esc_html( $show_option_all ) );
		}
		if ( $show_option_none ) {
			printf( '<option value="-1">%s</option>', esc_html( $show_option_none ) );
		}
		foreach ( $terms as $term ) {
			printf( '<option value="%s">%s</option>', esc_attr( $term->slug ), esc_html( $term->name ) );
		}
		print( '</select>' );
	}
}?>

y lo muestro así:

PHP:
<?php fjarrett_custom_taxonomy_dropdown( 'genero', 'date', 'DESC', '5', 'my_custom_taxonomy', 'Select All', 'Select None' ); ?>

pero necesito que al darle me lleve a la pagina donde aparecen todas las películas de acción por ejemplo.

por favor e intentado esto ya de varias formas sin conseguir mas que esto, que algún entendido e eche una mano.

GRACIASS:

- - - Actualizado - - -

perdón, el código anterior no vale, como listo las categorías de una taxonomía con su enlace?
 
Para mostrar el enlace usa: get_term_link($term);

Por ejemplo:

PHP:
    $args = array(
         'orderby' => $orderby,
        'order' => $order,
         'number' => $limit, 
    ); 

    $terms = get_terms( $taxonomy, $args );

    foreach ($terms as $term) {
        echo '<a href="'.get_term_link($term).'">'.$term->name.'</a>';
    }


Un Saludo
 
perfecto okaro con eso muestra el enlace justo como necesito pero la función que tengo creada creo que no funciona correctamente pues solo me muestra el genero de la película actual, no me lista todos los genero, puedes ayudarme con esto?

si necesitas mas info pídemela x favor.

Gracias

- - - Actualizado - - -

vale, solucionado de esta forma, por si a alguien le vale

PHP:
<?php
$menu_args = array(
    'taxonomy' => 'genero',
    'show_count' => 0,
    'hierarchical' => 1,
    'hide_empty' => 0,
    'title_li' => '',
    'depth' => 1
);

$term = get_term_by( 'slug', get_query_var( 'term' ), get_query_var( 'taxonomy' ) );
if ($term->parent == 0) {  
    $menu_args = array_merge($menu_args, array('child_of' => $term->term_id));
} else {
    $menu_args = array_merge($menu_args, array('child_of' => $term->parent));
}

wp_list_categories( $menu_args );
?>

ahora tengo 2 dudas, que a ver si alguien me ayuda.


1. Como consigo llamar al código desde la plantilla si meto el código en function.php?
2. En otras pruebas, eh conseguido que me apareciera tmb el numero de entradas que tiene cada categoría, como consigo esto?
 
Última edición: