Cómo obtener la categoría de la publicación y vincularla al archivo (de la categoría)

2

Estoy intentando diseñar un botón en la barra lateral que está relacionado con la publicación que se muestra. El botón es básicamente una "otra noticia en CAT1". Tengo este pedazo de código:

<div id="pagine">
<?php 
$category = get_the_category(); 
if($category[0]){
echo '<a href="'.get_category_link($category[0]->term_id ).'"><div id="pagine"><ul><li>News su '.$category[0]->cat_name.'</li></ul></div></a>';
}
?>
</div>

que desafortunadamente muestra la categoría incorrecta. ¿Alguien puede por favor decirme cómo hacerlo? No debería ser tan difícil, acabo de empezar con wordpress.

    
pregunta Filippo Bonino 08.01.2012 - 13:29

2 respuestas

6

Uno de estos tres debería hacer el trabajo por ti ...

1. Función: the_category();

News su <?php the_category(', '); ?>

Se muestra como:

  

News su WordPress , Computers , Blogging

Y si solo se asigna una categoría a una publicación, se muestra así:

  

News su WordPress

2. Función: get_the_category_list();

<div id="pagine"><?php echo get_the_category_list(); ?></div>

Se muestra como:

<div id="pagine">
    <ul class="post-categories">
        <li>
            <a href="http://example.com/category/wordpress/" title="View all posts in Business" rel="category tag">WordPress</a>
        </li>
        <li>
            <a href="http://example.com/category/computers/" title="View all posts in Business" rel="category tag">Computers</a>
        </li>
    </ul>
</div>

Y si solo se asigna una categoría a una publicación, la salida sería así:

<div id="pagine">
    <ul class="post-categories">
        <li>
            <a href="http://example.com/category/wordpress/" title="View all posts in Business" rel="category tag">WordPress</a>
        </li>
    </ul>
</div>

3. Función: single_cat_title();

Si desea mostrar solo una categoría (se mostrará la categoría con el ID más bajo) sin importar cuántas categorías se asignen a una publicación, use algo como esto:

<div id="pagine">
    <ul>
        <li>
            <?php
                $category = get_the_category();
                echo '<a href="'.get_category_link($category[0]->cat_ID).'">News su ' . $category[0]->cat_name . '</a>';
            ?>
        </li>
    </ul>
</div>

El código anterior siempre muestra una categoría, como esta:

  

News su WordPress

Entonces, dados los códigos (y lo que hace cada uno), se adaptan a sus necesidades.

    
respondido por el its_me 16.07.2012 - 11:11
1

get_the_category devuelve una matriz del objeto stdClass de todas las categorías asociadas con el post_id actual.

$ category [0] te dará la primera categoría en la matriz. Para ver el mapeo hacer.

<?php print_r( $category ); ?>
    
respondido por el Chris_O 08.01.2012 - 15:12

Lea otras preguntas en las etiquetas