Vazby mezi obsahem, prolinkování, související příspěvky, nazvěte to jak budete chtít, jsou často zmiňovaným způsobem, jak nabídnout čtenáři podobný zajímavý obsah. Zároveň tato technika přispívá, k lepším výsledkům ve vyhledávání. Zde nebudu toto stanovisko obhajovat, nejsem specialista na SEO, ale na mnoha místech se zmiňuje pozitivní dopad, propojení obsahu.
Existují různé „Související příspěvky“ pluginy, v desítkách variant, ale tyto pluginy, naráží na své hranice, při použití různých druhů obsahu. Jednoduše, příspěvky, na stránce s nimi nezobrazíte.
Naštěstí, existuje plugin Posts 2 Posts, který vytvořil Scribu, jméno, které není neznámé, všem, kdo se kolem WordPressu pohybují. Dlouhou dobu byl jedním z vývojářů WP CLI rozhraní. O kvalitách pluginu mluví i to, že s přípravou nové verze WordPressu, se vždy objeví diskuze o zařazení pluginu do jádra.
Co tedy Posts 2 Posts dokáže?
Zjednodušeně řečeno, prováže různé druhy obsahu. Články se stránkou, custom post type s custom post type, jak jen budete chtít.
Příklad:
Budete mít custom post type Projekt a články, které se budou týkat právě uskutečněných projektů. Vytvoříte si spojení, mezi Projekt a články a pak již jen budete vybírat, které články se k projektu přiřadí. Naprosto ideální po návštěvníka a pro SEO.
Bohužel, plugin nepatří mezi ty, které nainstalujete a můžete jen klikat. Propojení musíte vytvářet.
Na začátek si ukážeme propojení stránky a článků. Do functions.php vložíte tento kód:
function my_connection_types() { p2p_register_connection_type( array( 'name' => 'posts_to_pages', 'from' => 'post', 'to' => 'page' ) ); } add_action( 'p2p_init', 'my_connection_types' );
Vytvořili jste tak propojení článků a stránek. V detailu stránky pak uvidíte nový metabox:
Vyberete příslušné články a metabox se postará o uložení.
Následně si musíme vytvořit funkci, pro vypisování odkazů na články a vložit ji do functions.php
function custom_list_related($post_id, $title = ''){ $query_args = array( 'connected_type' => 'posts_to_pages', 'connected_items' => intval($post_id), 'nopaging' => true ); $query = new WP_Query($query_args); if($query->have_posts()): if(empty($title)) $title = __('Články', 'frl'); ?> <h3><?php echo $title; ?></h3> <ul class="related-items"> <?php while($query->have_posts()): $query->the_post(); ?> <li><a href="<?php the_permalink();?>"><?php the_title();?></a></li> <?php endwhile;?> </ul> <?php endif; wp_reset_postdata(); }
Jako poslední krok, musíme vložit funkci , do souboru šablony, například page.php:
global $post; custom_list_related($post->ID);
Výsledek vypadá takto:
Jak můžete vidět, na stránce se zobrazují tři odkazy přiřazených článků.
V případě, že nechcete vkládat funkce do šablony, tak můžete použít shortcody:
[p2p_connected type=posts_to_pages]
[p2p_related type=posts_to_pages mode=ol]
Pro úpravu shortcodů, má plugin vložené akce a filtry https://github.com/scribu/wp-posts-to-posts/wiki/Actions-and-filters
Ostatně, celá Wiki na GitHubu je velmi rozsáhlá a obsahuje řadu ukázek.
Možná si říkáte, že na takovém pluginu nic moc není, ale dejte tento článek přečíst tomu, kdo se vám stará o SEO, nebo obsahovou strategii a garantuji vám, že z možností které se nabízí, bude nadšen. Jen namátkou – můžete vytvářet seriály článků, propojit automobily s dealery a další a další způsoby.
Zkrátka, pro rozsáhlejší obsahové weby, naprosto ideální záležitost.