it-swarm.dev

Popis kategorie propojení

Přetahuji si to za vlasy. Ve Správci odkazů můžete zadat popis kategorie (kromě samotného odkazu). Nicméně, v wp_list_bookmarks, neexistuje žádný způsob, jak volat tuto hodnotu kdekoli. Tak jak to mohu dostat?

Vím, že je v tabulce term_taxonomy, pod link_category. Existuje tedy funkce, která by mohla být zapsána pro dynamické načtení této hodnoty (tzn. Bez nutnosti deklarovat každou kategorii odkazů samostatně)

2
Norcross

OK, s pomocí kamaráda jsem to dokázal udělat. Vykopal jsem wp_list_bookmarks a šel s kombinací get_terms a 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

použití:

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

např.:

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

Co se týče widgetu záložek, není možnost zobrazit je automaticky?

2
Denis de Bernardy

Není to nejlepší řešení pro tento případ, ale můžete jej použít prozatím:

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

Doufám, že to pomůže. Hledám lepší řešení. ;)

0
Flávio Ricardo