Cum să afișez articole complete în loc de fragmente în template-ul de categorie WordPress
Folosesc WordPress 3.0.1 cu tema Twenty Ten. Încerc să modific modul în care articolele sunt afișate în vizualizarea pe categorii (accesând o adresă URL de genul siteulmeu.ro/category/categoriamea). În prezent, articolele în vizualizarea pe categorii afișează doar o parte din conținut, dar aș dori să le afișez în întregime.
În fișierul Template de Categorie (category.php), există câteva linii de cod care par să fie responsabile pentru generarea datelor categoriei:
/* Rulează loop-ul pentru pagina de categorie pentru a afișa articolele.
* Dacă dorești să suprascrii acest lucru într-o temă copil, atunci include un fișier
* numit loop-category.php care va fi folosit în schimb.
*/
get_template_part( 'loop', 'category' );
?>
Deoarece comentariile menționează crearea unei teme copil, am urmat aceste instrucțiuni (prin acest răspuns) pentru a configura o temă copil și a adăuga funcționalități personalizate.
Am înțeles din comentarii că trebuie să creez un fișier numit loop-category.php cu implementarea mea personalizată, dar nu știu ce cod trebuie să pun în acel fișier. Ce trebuie să adaug în loop-category.php pentru ca vizualizările pe categorii să afișeze articolele complete?
NOTĂ: Deși folosesc WordPress de ceva timp, aceasta este prima mea încercare de personalizare a temelor. Orice ajutor ar fi foarte apreciat.

@Ben,
Dacă te uiți la linia 132 din loop.php în Twentyten, vei găsi instrucțiunea condițională care îi spune WordPress să afișeze the_excerpt doar pe arhivele de categorii. Chiar sub aceasta, după <?php else : ?>
, este modul în care vor fi afișate toate articolele care nu sunt pe o pagină de arhivă, în categoria asides sau în categoria gallery. (Categoriile asides și gallery sunt țintite la începutul loop.php)
<?php if ( is_archive() || is_search() ) : // Afișează doar rezumate pentru arhive și căutare. ?>
<div class="entry-summary">
<?php the_excerpt(); ?>
</div><!-- .entry-summary -->
<?php else : ?>
<div class="entry-content">
<?php the_content( __( 'Continuă citirea <span class="meta-nav">→</span>', 'twentyten' ) ); ?>
<?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pagini:', 'twentyten' ), 'after' => '</div>' ) ); ?>
</div><!-- .entry-content -->
<?php endif; ?>
În fișierul tău loop-category.php, cel mai simplu ar fi să copiezi și să lipești întregul fișier loop.php și să modifici secțiunea de cod de mai sus în:
<?php if ( is_search() ) : // Afișează doar rezumate pentru căutare. ?>
<div class="entry-summary">
<?php the_excerpt(); ?>
</div><!-- .entry-summary -->
<?php else : ?>
<div class="entry-content">
<?php the_content( __( 'Continuă citirea <span class="meta-nav">→</span>', 'twentyten' ) ); ?>
<?php wp_link_pages( array( 'before' => '<div class="page-link">' . __( 'Pagini:', 'twentyten' ), 'after' => '</div>' ) ); ?>
</div><!-- .entry-content -->
<?php endif; ?>
Vei observa că am eliminat doar is_archive
din instrucțiunea condițională, astfel încât acum arhivele de categorii vor fi afișate folosind codul de după else, care conține the_content
în loc de the_excerpt
.

este foarte tare; a funcționat perfect! la început nu am realizat că voi copia întregul conținut din loop.php în loop-category.php. Cred că încep să înțeleg cum funcționează temele derivate și este un concept destul de interesant.

Am fi putut să-l modificăm direct în loop.php, dar ar fi fost suprascris la următoarea actualizare.

Am fi putut personaliza la fel de bine loop.php
- fișierele din tema derivată nu sunt suprascrise de actualizările temei părinte (asta este ideea :). De asemenea, dacă folosești loop-category.php
atunci condiția if ( is_search() )...
poate fi eliminată complet, pentru că acest loop va fi apelat doar pe paginile de categorie oricum.

Tocmai am eliminat a doua instanță a "is_archive() ||" din loop.php și am reușit să afișez întregul conținut al postărilor pe pagina category/catslug. Nu a fost necesar să creez un fișier loop-category.php. Nu aș fi reușit fără instrucțiunile lui Chris_O. Mulțumesc, Chris!!
