Criar menu suspenso com taxonomias vinculadas

  • Autor Autor Juanjo87
  • Data de início Data de início
Tradução em andamento: em alguns minutos este tópico estará em português. Por enquanto, o conteúdo está no original em espanhol. Ver original
J

Juanjo87

Gamma
Diseñador
Usuário com poucas negociações! Use sempre o saldo do 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?
 
Foi útil? Participe da conversa

Com sua conta grátis você pode responder, mandar mensagem privada ao autor e comprar com Saldo retido: o pagamento é liberado quando você recebe o combinado.

Leva 30 segundos · você volta a este tópico ao terminar
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 edição:
Voltar
Topo