Question

Résumé: Comment puis-je obtenir le nom et le permalien de l'objet retourné par wp_get_object_terms () ?

Detailled: J'ai créé un type de poste personnalisé appelé « ge_zielgruppe » et une taxonomie appelée « ge_zielgruppe_taxonomy ». Ce dernier peut être attaché à des postes et à « ge_zielgruppe » types de poste.

Sur la seule page de « ge_zielgruppe » Je veux montrer les derniers messages marqués avec le même « ge_zielgruppe_taxonomy ». J'ai réalisé cela avec

<?php
$theZielgruppe = wp_get_object_terms($post->ID, 'ge_zielgruppe_taxonomy');
$zielgruppe = new WP_Query(array('ge_zielgruppe_taxonomy' => $theZielgruppe->slug));
$zielgruppe->query('showposts=10');
if ($zielgruppe->have_posts()) :
    while ($zielgruppe->have_posts()) :
        $zielgruppe->the_post();
?>
<<--archive-stuff-->>
<?php
    endwhile;
endif;
?>

Cette partie des travaux (cependant, je ne sais pas si elle est élégante).

Maintenant, je voudrais mettre un droit de lien après ces 10 postes, qui ressemble à ceci

<a href="<<--permalink to archive of 'ge_zielgruppe_taxonomy'-->>" rel="bookmark" title="More posts for <<--Name of 'ge_zielgruppe_taxonomy'-->>; ">More posts for <<--Name of 'ge_zielgruppe_taxonomy'-->></a>

Alors, comment puis-je obtenir

  1. <<--permalink to archive of 'ge_zielgruppe_taxonomy'-->> et
  2. <<--Name of 'ge_zielgruppe_taxonomy'-->>
Était-ce utile?

La solution

Pour récupérer l'URL archive pour ce terme de taxonomie, utiliser quelque chose comme ça (j'utilise vos conventions de nommage ci-dessus, et en supposant que $theZielgruppe est un objet terme.

$url = get_term_link( $theZielgruppe, 'ge_zielgruppe_taxonomy' );

Pour obtenir le nom, utilisez simplement

$theZielgruppe->name

Est-ce que vous cherchez?

EDIT

Le lien ci-dessus alors ressembler à ceci:

<a href="<?php echo get_term_link( $theZielgruppe, 'ge_zielgruppe_taxonomy' ); ?>" rel="bookmark" title="More posts for <?php echo $theZielgruppe->name; ?>; ">More posts for <?php echo $theZielgruppe->name; ?></a>

EDIT 2

wp_get_object_terms() retourne un tableau de termes. Si vous avez changé chaque utilisation de $theZielgruppe à $theZielgruppe[0] d'utiliser le premier terme que le ge_zielgruppe actuel concerne. Un avertissement, cependant: wp_get_object_terms() peut retourner soit comme un tableau vide ou en tant que WP_Error. Vous pouvez modifier votre code pour vérifier que:

<?php
$theZielgruppe = wp_get_object_terms($post->ID, 'ge_zielgruppe_taxonomy');
if( !empty( $theZielgruppe ) && !is_wp_error( $theZielgruppe ) ):
    $theZielgruppe = $theZielgruppe[0];
    $zielgruppe = new WP_Query(array('ge_zielgruppe_taxonomy' => $theZielgruppe->slug));
    $zielgruppe->query('showposts=10');
    if ($zielgruppe->have_posts()) :
        while ($zielgruppe->have_posts()) :
            $zielgruppe->the_post();
    ?>
    <<--archive-stuff-->>
    <?php
        endwhile;
    endif;
    ?>
    <a href="<?php echo get_term_link( $theZielgruppe, 'ge_zielgruppe_taxonomy' ); ?>" rel="bookmark" title="More posts for <?php echo $theZielgruppe->name; ?>; ">More posts for <?php echo $theZielgruppe->name; ?></a>
    <?php
endif;
?>
Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top