Breadcrumb per Custom Post Types in WordPress?

29 set 2010, 13:32:23
Visualizzazioni: 16.4K
Voti: 4

Ho provato sia i breadcrumb di Yoast che Breadcrumbs NavXT ma non riesco a farli funzionare con i custom post types. Qualcuno è riuscito a risolvere questo problema?

Un singolo post 'News' sul mio sito mostra: Home -> Blog -> Il mio post News

Invece di mostrare correttamente: Home -> News -> Il mio post News

1
Commenti

Anche a me piacerebbe molto conoscere la risposta a questa domanda.

jessegavin jessegavin
29 set 2010 22:37:36
Tutte le risposte alla domanda 3
1

Breadcrumb NavXT offre il supporto per i Custom Post Type a partire dalla versione 3.6.0. Potresti riscontrare alcuni problemi con le opzioni. Prova a resettarle o consulta la versione in sviluppo. Ricorda di fare prima un backup delle tue impostazioni utilizzando la funzionalità di esportazione/importazione delle impostazioni.

29 set 2010 23:18:51
Commenti

Grazie - la versione di sviluppo ha funzionato. Nelle impostazioni ora puoi impostare una Pagina Radice per ogni tipo di post personalizzato.

fxfuture fxfuture
30 set 2010 02:05:09
0

Come ha detto hakre, Breadcrumb NavXT supporta ufficialmente i custom post type a partire dalla versione 3.6.0. Ho testato sia con custom post type gerarchici che piatti (e con tassonomie personalizzate con custom post type piatti).

C'è un cambiamento nel comportamento di Breadcrumb NavXT nella versione 3.7.0 (la prossima release) che ti permette di impostare la root per i custom post type. Nella versione 3.6.0 si assumeva che tutti i post type piatti risiedessero sotto la pagina dei post (la vedi come "blog" nel breadcrumb), mentre tutti i post type gerarchici risiedessero sotto la pagina iniziale (front page, o "Home" nel tuo breadcrumb). Questa funzionalità è già parzialmente implementata nella versione SVN trunk (al momento gli archive basati su tassonomia non supportano questa feature).

A meno che "News" non sia il nome di un termine di qualche tassonomia di "My News Post", o il post genitore di "My News Post", al momento non verrà visualizzato. Come menzionato nel paragrafo precedente, con la versione in sviluppo puoi avere "News" come pagina (del built-in WordPress "page" post type) e verrà mostrata nel breadcrumb.

30 set 2010 02:09:28
0

Attualmente, però, sembra che l'uso dei custom post type in Breadcrumb NavXT richieda la creazione di una pagina dedicata come base per l'archivio del post type.

Un'altra alternativa è Breadcrumb Trail (http://wordpress.org/extend/plugins/breadcrumb-trail/). Sembra supportare i custom post type... ma solo per WP 3.1!! (Almeno questo è quello che deduco dal codice, visto che utilizza funzioni disponibili solo da WP 3.1 in poi).

Quindi ho modificato un po' il codice. Ma a causa delle mie esigenze in quel momento, l'ho integrato con un paio di plugin... Significa che è necessario avere quei plugin con impostazioni specifiche.

Puoi scaricare la versione modificata del plugin Breadcrumb Trail da questo link: http://www.zumodrive.com/share/8addOGQ3OW.

Poi dovrai scaricare e utilizzare anche il plugin Custom Post Permalinks (http://wordpress.org/extend/plugins/custom-post-permalinks/).

Puoi trovare la spiegazione delle modifiche e le istruzioni per configurarlo nella cartella del plugin modificato (chiamata *modification_log.rtf*).

In sostanza, quello che devi fare dopo aver attivato entrambi i plugin è impostare prima le 'Permalink Settings' come segue:

  • 'Common settings' su 'Month and name'
  • 'Extra Permalink Settings' su '/%post_type%/%your_custom_taxonomy%/%news_post%/'

Questo configurerà i permalink in questo modo:

www.yoursite.com/your_custom_post_type/your_custom_taxonomy_term/the_post

Poi inserisci il codice qui sotto dove vuoi che appaiano i breadcrumb:

<?php
// Plugin: Breadcrumb Trail (Modified) //
if(function_exists('breadcrumb_trail')) {
    $breadcrumb = array(
        'separator' => '>',
        'before' => 'You are here: ',
        'after' => false,
        'front_page' => true,
        'show_home' => __('Home'),
        'singular_{your_custom_post_type}_taxonomy' => 'your_custom_taxonomy',
        'echo' => true,
    );
    breadcrumb_trail($breadcrumb);
}
?>

Questo permetterà di avere breadcrumb come questi:

You are here: Home > Your Custom Post Type > Your Custom Taxonomy Term > The Post

Ovviamente, puoi adattarlo alle tue esigenze, ma questa è la soluzione che ho trovato per il progetto su cui stavo lavorando.

Potrei aver dimenticato qualche impostazione necessaria per far funzionare tutto correttamente... quindi fammi sapere se non funziona.

In ogni caso, volevo solo condividere un'altra soluzione... Spero che possa tornare utile a qualcuno.

A proposito, il plugin modificato si integra anche con il plugin qTranslate per supportare il multilinguaggio...

Saluti!

31 ott 2010 19:30:18