web-dev-qa-db-fra.com

is_archive () contenu affiché à la place de is_category ()

Mon problème:

Si je navigue vers http://mysite/category/mycategory, le contenu de if (is_category()) n'est pas affiché, , la fonction if(is_archive()) est affichée.

Mon code:

archive.php:

<?php include('includes/resultlist.php')?>

search.php:

<?php include('includes/resultlist.php')?>

includes/resultlist.php:

<?php get_header(); ?>

            <div class="main">

<?php if (is_archive()) { ?>

            <h1>Artigos publicados em <?php single_month_title(' '); ?></h1>

<?php } else if (is_search()) { ?>

            <h1>Resultados para "<?php the_search_query(); ?>"</h1>

<?php } else if (is_category()) { ?>

            <h1>Resultados para categoria "<?php the_category(); ?>"</h1>

<?php }

if ( have_posts() ) while (have_posts()) { the_post(); ?>

                <h2><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>
                por <span class="date"><?php the_author(); ?></span> em 
                <span class="date"><?php the_date(); ?></span>

                <p><?php echo get_the_excerpt(); ?> <a href="<?php the_permalink(); ?>">Leia mais</a></p>

             <?php } 

else {?> 

            <h2>Nada encontrado</h2>
            <p>Desculpe, não encontramos o que você procurava!</p>

<?php }

include('pagination.php');

?>

            </div><!-- /main -->

<?php get_sidebar(); ?>
<?php get_footer(); ?>

Ce que j'ai essayé:

Création d'un fichier category.php avec le contenu: <?php include('includes/resultlist.php')?> mais le problème persiste. J'ai inclus un texte incohérent à la fin de category.php et il apparaît à la fin de la page rendue. Le fichier est appelé, je suppose.

Mon environnement:

LAMP Ubuntu 64 bits avec Apache, mysql et php installés avec les options par défaut via apt-get.

2
That Brazilian Guy

Une page de catégorie est une page d'archive . Donc is_archive() va return true sur une page de catégorie. Essayez d’appuyer davantage sur is_category() ou d’utiliser is_category() avant is_archive().

comme ceci

if ( is_search() )
{
    // Search Result content
}
elseif( is_category() )
{
    // Category archive content
}
// check for tag, taxonomy, date before 
elseif ( is_archive() )
{
    // Default archive content for *every* type of archive
}
else
{
    // Default content for non-archives
}
5
Sisir