it-swarm.com.de

Anzeigen von Kategoriedaten aus einem benutzerdefinierten Beitrag

Ich habe eine Seite mit benutzerdefinierten Beiträgen erstellt: http://www.africanhealthleadership.org/resources/toolkit/

Jedes Tool (Vorbereitung, Bewertung usw.) ist ein benutzerdefinierter Beitrag. Im WP Admin ist jedes Tool eine Kategorie. Jede Kategorie hat ein Feld "Beschreibung". Ich möchte diese Beschreibungen auf der Toolkit-Seite ausgeben. Ich habe versucht, dies zu verwenden und nichts angezeigt: <?php echo category_description( $category ); ?>

Derzeit sind die Beschreibungen auf der Seite fest programmiert. Derjenige für die Vorbereitung beginnt "Vorbereitungstools etablieren ..."

Vielen Dank für alle Ideen! Jeff


Hier ist die Schleife, die den benutzerdefinierten Beitragstyp ausspuckt:

<?php
query_posts( array( 'post_type' => 'portfolio', 'toolkit' => 'preparation' ) );
//the loop start here
if ( have_posts() ) : while ( have_posts() ) : the_post();
?>
<?php the_content(); ?>
<?php endwhile; endif; wp_reset_query(); ?>

Und hier ist der Code aus functions.php

add_action('init', 'portfolio_register');

function portfolio_register() {

$labels = array(
    'name' => _x('Toolkit', 'post type general name'),
    'singular_name' => _x('Tool', 'post type singular name'),
    'add_new' => _x('Add New Tool', 'tool'),
    'add_new_item' => __('Add New Tool'),
    'edit_item' => __('Edit Tool'),
    'new_item' => __('New Tool'),
    'view_item' => __('View Tool'),
    'search_items' => __('Search Toolkit'),
    'not_found' =>  __('Nothing found'),
    'not_found_in_trash' => __('Nothing found in Trash'),
    'parent_item_colon' => ''
);

$args = array(
    'labels' => $labels,
    'public' => true,
    'publicly_queryable' => true,
    'show_ui' => true,
    'query_var' => true,
    'menu_icon' => get_stylesheet_directory_uri() . '/article16.png',
    'rewrite' => true,
    'capability_type' => 'post',
    'hierarchical' => false,
    'menu_position' => null,
    'supports' => array('title','editor','thumbnail')
  ); 

register_post_type( 'portfolio' , $args );
}

register_taxonomy("toolkit", array("portfolio"), array("hierarchical" => true,   "label"     => "Tool Categories", "singular_label" => "Tool", "rewrite" => true));
2
Jeff Tancil

Um den Taxonomiebegriff für diesen bestimmten Beitrag zu erhalten, benötigen Sie wp_get_post_terms($post->ID, 'yourtaxonomyname')

Dies gibt ein Array von Begriffen in der angegebenen Taxonomie für den angegebenen Beitrag zurück. Die Codex-Seite lautet: http://codex.wordpress.org/Function_Reference/wp_get_post_terms

Wenn Sie in einer Taxonomie nach einem bestimmten Begriff suchen, geben Sie get_term ($ taxonomy_name, $ term_id) ein. Sie können auch alle Begriffe für eine Taxonomie mit get_terms () abrufen.

Hier ist ein Beispiel, wie man es benutzt.

$terms = wp_get_post_terms($post->ID,'toolkit');  
foreach ($terms as $term) {  
    echo $term->description;  
}  
5
anu

Stellen Sie sicher, dass Sie die numerische Kategorie-ID an die category_description-Funktion übergeben.

Der Wert der Variablen $ category füllt sich nicht automatisch, wenn Sie dies erwartet haben. Sie müssen es für jede Kategorie einstellen, die Sie ausgeben.

Wenn Sie den entsprechenden Code posten (die Schleife, mit der Sie diese Kategorieliste ausfiltern), ist die Fehlerbehebung einfacher.

2
MathSmath