Anteprima del custom post type non funzionante
Ho un problema con l'anteprima dei post in stato "bozza" per un custom post type che reindirizza alla home page del sito quando i pretty permalinks sono attivati.
Ad esempio, creo un nuovo "Progetto", lo salvo come bozza e faccio clic su anteprima. La finestra di anteprima si apre sulla home page del sito.
Funziona correttamente se imposto i permalink del sito su 'default'.
Questo è il codice con cui registro il post type. Come indicato nella nota nella sezione 'publicly_queryable' della pagina codex di register_post_type, ho sperimentato diverse impostazioni per 'query_var' (true / false / 'projects') ma nessuna ha fatto differenza. Ho anche provato a modificare l'argomento rewrite e/o rimuoverlo completamente. Niente da fare. Grazie per qualsiasi aiuto!
AGGIORNAMENTO: Ho confermato che questo funzionava in precedenza e si è rotto con un recente aggiornamento. Suppongo sia stato l'aggiornamento alla versione 4.2.2 menzionato nella sezione 'publicly_queryable' della pagina codex di register_post_type, ma nessuno se n'è accorto fino ad ora.
// Progetto
$labels = array(
'name' => 'Progetti',
'singular_name' => 'Progetto',
'menu_name' => 'Progetti',
'parent_item_colon' => 'Progetto genitore:',
'all_items' => 'Tutti i progetti',
'view_item' => 'Visualizza progetto',
'add_new_item' => 'Aggiungi nuovo progetto',
'add_new' => 'Aggiungi nuovo',
'edit_item' => 'Modifica progetto',
'update_item' => 'Aggiorna progetto',
'search_items' => 'Cerca progetto',
'not_found' => 'Non trovato',
'not_found_in_trash' => 'Non trovato nel cestino',
);
$rewrite = array(
'slug' => 'projects',
'with_front' => true,
'hierarchical' => true,
);
$args = array(
'label' => 'Progetto',
'description' => 'Progetti individuali',
'labels' => $labels,
'supports' => array( 'title', 'editor', 'revisions', 'author'),
'taxonomies' => array( 'project_categories', 'project_sponsors' ),
'hierarchical' => false,
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'show_in_nav_menus' => true,
'show_in_admin_bar' => true,
'menu_position' => 20,
'menu_icon' => 'dashicons-clipboard',
'can_export' => true,
'has_archive' => true,
'exclude_from_search' => false,
'publicly_queryable' => true,
'capability_type' => 'page',
'rewrite' => $rewrite,
'query_var' => 'projects',
);
register_post_type( 'projects', $args );

Il codice che hai fornito funziona come previsto su un'installazione fresca di WordPress (in questo caso la versione 4.3.1). Le idee seguenti non dovrebbero essere considerate una risposta, quanto piuttosto una lista di controllo per aiutare nel debug del problema restringendo l'ambito del problema:
Dovrai essere loggato come un utente con i permessi per visualizzare le bozze per evitare un errore 404 o un reindirizzamento.
Prova a disabilitare i tuoi plugin uno per uno per verificare se uno di essi ha stabilito una regola di riscrittura in conflitto.
Controlla la configurazione del tuo server web (come .htaccess su Apache) per vedere se ci sono delle regole di reindirizzamento presenti.
Infine, considera di passare temporaneamente a un altro tema e aggiungere il tuo tipo di post personalizzato lì per vedere se ottieni gli stessi risultati. Se un nuovo tema risolve il problema con il tuo codice, forse i conflitti sono tutti all'interno del tuo tema attuale.
