web-dev-qa-db-fra.com

Description de la catégorie de lien

Je me tire les cheveux pour ça. Dans le gestionnaire de liens, vous pouvez entrer une description de la catégorie (en plus du lien lui-même). Cependant, dans wp_list_bookmarks, il n’est pas possible d’appeler cette valeur n’importe où. Alors, comment puis-je l'obtenir?

Je sais que c'est dans la table term_taxonomy, sous link_category. Existe-t-il une fonction qui pourrait être écrite pour extraire cette valeur de manière dynamique (c’est-à-dire qu’il n’est pas nécessaire de déclarer chaque catégorie de lien indépendamment)?

2
Norcross

OK, avec l'aide d'un ami, j'ai pu y arriver. J'ai abandonné le wp_list_bookmarks et suis allé avec une combinaison de get_terms et get_bookmarks.

function blogroll_page( $args = array() ) {
    if(is_page('blogroll')) {
        if( $terms = get_terms( 'link_category', $args = array('exclude' => 16) ) )
        {
            foreach( $terms as $c )
            {
                printf( '<h3>%s</h3>', $c->name );
                printf( '<p>%s</p>', $c->description );

                if( $bookmarks = get_bookmarks( array( 'category' => $c->term_id ) ) )
                {
                    printf( '<ul class="xoxo bookmarks">' );
                    foreach( $bookmarks as $bm )
                        printf( '<li><a href="%s" title="%s">%s</a></li>', $bm->link_url, $bm->link_description, $bm->link_name );
                    printf( '</ul>' );

                }
            }
        }
    }
}
3
Norcross

utilisation:

get_term_field( $field, $term, $taxonomy, $context = 'display' )

par exemple.:

get_term_field('description', 3, 'link_category')

Pour le widget de signets, n'y a-t-il pas une option pour les afficher automatiquement?

2
Denis de Bernardy

Ce n'est pas la meilleure solution pour ce cas, mais vous pouvez l'utiliser pour l'instant:

<?php $cat = get_category(YOUR_CATEGORY_ID, 'ARRAY_A'); ?>
<?php echo $cat['description']; ?>

J'espère que cela pourra aider. Je cherche une meilleure solution. ;)

0
Flávio Ricardo