Am gasit undeva un detinator de site WordPress care intreba daca e posibil sa afisezi pagini relationate in WordPress, in loc de posturi. In acest articol va vom invata cum sa afisati pagini relationate in WordPress.
Afisarea de pagini relationate in WordPress, folosing un plugin
Cel mai usor mod de a afisa astfel de pagini relationate in WordPress il reprezinta folosirea unui plugin.
primul lucru pe care trebuie sa il faceti este sa descarcati, sa instalati respectiv sa activati plugin-ul Yet Another Related Post Plugin (YARPP). Dupa activarea lui, trebuie sa mergeti la Setari > YARPP pentru a configura plugin-ul.
Pe pagina de setari a plugin-ului, scrool in jos pana la sectiunea „Display Options for your website”. Sub optiunea „Automatically Display”, trebuie sa bifati „pages” si sa lasati nebifate „posts” respectiv „media”. Asta-i tot. poti sa iti salvezi setarile acum si plugin-ul YARPP va incepe sa afiseze pagini relationate sub fiecare pagina din WordPress.
Nota: Unele hostinguri WordPress blocheaza acest plugin pentru ca foloseste foarte multe resurse in baza de date. O alta problema ce poate aparea este ca YARPP nu va putea cauta text in baza de date daca motorul de stocare MySQL nu este setat pe InnoDB.
Afisarea de pagini relationate in WordPress, fara plugin
Cel mai eficient mod de a arata posturi relationate este prin folosirea tagurilor si categoriilor. Ei bine, paginile in WordPress, nu au taguri sau categorii asa incat trebuie sa instalezi mai intai plugin-ul Post Tags and Categories for Pages.
Acum trebuie sa faci cateva setari. Mai intai, trebuie sa iei paginile pe rand si sa le pui tag-uri. Dupa, trebuie sa adaugi urmatorul cod in fisierul functions.php al temei:
function wpb_related_pages() { $orig_post = $post; global $post; $tags = wp_get_post_tags($post->ID); if ($tags) { $tag_ids = array(); foreach($tags as $individual_tag) $tag_ids[] = $individual_tag->term_id; $args=array( 'post_type' => 'page', 'tag__in' => $tag_ids, 'post__not_in' => array($post->ID), 'posts_per_page'=>5 ); $my_query = new WP_Query( $args ); if( $my_query->have_posts() ) { echo '<div id="relatedpages"><h3>Related Pages</h3><ul>'; while( $my_query->have_posts() ) { $my_query->the_post(); ?> <li><div class="relatedthumb"><a href="<? the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_post_thumbnail('thumb'); ?></a></div> <div class="relatedcontent"> <h3><a href="<? the_permalink()?>" rel="bookmark" title="<?php the_title(); ?>"><?php the_title(); ?></a></h3> <?php the_time('M j, Y') ?> </div> </li> <? } echo '</ul></div>'; } else { echo "No Related Pages Found:"; } } $post = $orig_post; wp_reset_query(); }
Mai apoi, trebuie sa adaugi aceasta linie de cod, in locul in care vrei sa apara paginile relationate.
<?php wpb_related_pages(); ?>
Nu va arata chiar superb insa poti edita CSS-ul pentru a arata ca tema ta.