Astuce pour obtenir les types de poste personnalisé pour afficher sur une page de taxonomie personnalisée?

wordpress.stackexchange https://wordpress.stackexchange.com/questions/4160

  •  16-10-2019
  •  | 
  •  

Question

Je configuration ai un type de poste personnalisé et une taxonomie personnalisée pour ce type de poste, mais je vais avoir un problème - sur les pages permalien de taxonomie personnalisé, le contenu du message personnalisé qui devrait être là est pas affiché. Cependant, en regardant la source de la page, je peux voir qu'il ya une div qui doit contenir le contenu du message.

Toutes les suggestions sur la façon d'obtenir tout le contenu à afficher?

Edit:. Le plug-in interface utilisateur Types de poste personnalisé a été utilisé pour la création des types de postes personnalisés et les taxonomies personnalisées

Edit 2: Il se trouve que c'était un problème de thèse. Options de conception> Options d'affichage> Archives a été réglé sur « titres seulement », qui a gardé le contenu des messages d'être affiché.

Était-ce utile?

La solution

Par défaut, un type de poste personnalisé ne figure pas dans la requête standard. Vous aurez besoin de créer manuellement une requête dans votre page de taxonomie pour ce type de poste.

Autres conseils

Donner cette une photo, d'ajouter dans votre fichier fonctions

add_filter( 'pre_get_posts', 'include_tax_posts' );

function include_tax_posts( $query ) {

    if ( is_tax()  && false == $query->query_vars['suppress_filters'] )
        $query->set( 'post_type', array( 'post', 'page', 'YOUR_POST_TYPE' ) );

    return $query;
}

Ok, a fait un peu de creuser et il semble que il y a un billet pour résoudre ce problème dans la version 3.1. Jusque-là, vous voudrez peut-être essayer d'utiliser ce plugin: http: // wordpress .org / extension / plugins / simple post type mesure archives /

L'autre option, depuis sa thèse, est d'utiliser leur API boucle personnalisée et créer une requête pour exécuter sur toutes les pages de cette série étant taxonomie / type poste.

Je ne sais pas si cela vous aidera là où il semble que vous utilisez un plugin pour créer des types personnalisés poste et taxonomies (n'a jamais eu un peu comme avec ceux). C'est ce que mon développeur a fait pour obtenir des postes d'une taxonomie personnalisée pour afficher sur une page de poste personnalisé lorsque les limaces correspondent. Semblable à ce que vous faites, mais sur le plan technique en sens inverse ...

Dans functions.php ...

Créer un type personnalisé après à la relation de taxonomie personnalisée

    global $post_tax;
    $post_tax = array(
        'store' => array('post' => 'stores', 'tax' => 'store'),
        'state' => array('post' => 'states', 'tax' => 'state')
    );

enregistrer les types de poste

function post_types_custom_init() {

global $post_tax;

register_post_type($post_tax['store']['post'], array('label' => 'Stores','public' => true,'show_ui' => true,'_builtin' => false, 'capability_type' => 'post','hierarchical' => true,'rewrite' => array('slug' => 'stores'),'query_var' => true,'supports' => array('title','editor','excerpt','trackbacks','custom-fields','comments','revisions','thumbnail','author','page-attributes')) );

register_post_type($post_tax['state']['post'], array('label' => 'States','public' => true,'show_ui' => true,'_builtin' => false, 'capability_type' => 'post','hierarchical' => true,'rewrite' => array('slug' => 'states'),'query_var' => true,'supports' => array('title','editor','excerpt','trackbacks','custom-fields','comments','revisions','thumbnail','author','page-attributes')) );

}

Crochet dans les create_post_type_taxonomies d'action init et appel quand il se déclenche

add_action ( 'initialisation', 'create_beer_taxonomies', 0);

Créer taxonomies pour leurs types de poste correspondant

function create_beer_taxonomies() 
{

global $post_tax;

// Add new taxonomy
  $labels = array(
    'name' => _x( 'Stores', 'taxonomy general name' ),
    'singular_name' => _x( 'Store', 'taxonomy singular name' ),
    'search_items' =>  __( 'Search Stores' ),
    'all_items' => __( 'All Stores' ),
    'parent_item' => __( 'Parent Store' ),
    'parent_item_colon' => __( 'Parent Store:' ),
    'edit_item' => __( 'Edit Store' ), 
    'update_item' => __( 'Update Store' ),
    'add_new_item' => __( 'Add New Store' ),
    'new_item_name' => __( 'New Store Name' ),
  );    

// Make it hierarchical (like categories) and assign to specific post types
  register_taxonomy($post_tax['store']['tax'],
    array('post',$post_tax['review']['post']),
    array(
    'hierarchical' => true,
    'labels' => $labels,
    'show_ui' => true,
    'query_var' => true,
    'rewrite' => array( 'slug' => 'stores-bp' ),
  ));

  $labels = array(
    'name' => _x( 'States', 'taxonomy general name' ),
    'singular_name' => _x( 'State', 'taxonomy singular name' ),
    'search_items' =>  __( 'Search States' ),
    'all_items' => __( 'All States' ),
    'parent_item' => __( 'Parent State' ),
    'parent_item_colon' => __( 'Parent State:' ),
    'edit_item' => __( 'Edit State' ), 
    'update_item' => __( 'Update State' ),
    'add_new_item' => __( 'Add New State' ),
    'new_item_name' => __( 'New State Name' ),
  );

  register_taxonomy($post_tax['state']['tax'],
        array('post',$post_tax['beer']['review']),
    array(
    'hierarchical' => true,
    'labels' => $labels,
    'show_ui' => true,
    'query_var' => true,
    'rewrite' => array( 'slug' => 'states-bp' ),
  ));

}

Modèle / boucle

function meta_loop_beers($queried_tax,$queried_term){
    //$paged = (get_query_var('paged')) ? get_query_var('paged') : 1;

    $queried_page = get_query_var('paged');
    $paged = $queried_page ? $queried_page : 1;

    $post_type = '';

    global $post_tax;
    foreach($post_tax as $relation){
        if( $relation['tax'] == $queried_tax ){
            $post_type = $relation['post'];
            break;
        }

    }


        $args=array(
          'post_type' => 'post',
          $queried_tax => $queried_term,
          'post_status' => 'publish',
          'posts_per_page' => -1,
          'caller_get_posts'=> 1
        );

        $my_query = null;
        $my_query = new WP_Query($args);

<PUT LOOP(S) HERE>

        wp_reset_query();


}

Je crois * qui est tout. Vous ne serez pas en mesure de copier-coller ce code et le faire fonctionner pour vous automatiquement mais nous l'espérons vous donner une idée sur la façon de le faire au travail. Cela a été des choses de bord de saignement à l'époque, complété il y a environ 6 mois et je suppose qu'il ya une meilleure mise en œuvre de quelque part. Malheureusement, le site est toujours pas en direct donc rien à montrer pour le moment.

Nous avons également redirect (htaccess) les limaces pour les taxonomies que nous voulions ceux qui recherchent le magasin (type post) et d'archivage pour les magasins (taxonomie) à la terre sur la même page où la page de profil »de la magasin affiche les deux.

Ainsi, le résultat final est que la page archive pour domain.com/stores-bp/walmart va rediriger vers domain.com/stores/walmart.

Trop confus! Je peux essayer de préciser si nécessaire.

Licencié sous: CC-BY-SA avec attribution
Non affilié à wordpress.stackexchange
scroll top