[Résolu] affichage par ordre alphabétique des catégorie de Custom post typ (Créer un compte)

  • WordPress :4.7
  • Statut : résolu
3 sujets de 1 à 3 (sur un total de 3)
  • Auteur
    Messages
  • #1617806
    Timama
    Participant
    Chevalier WordPress
    284 contributions

    Bonjour,

    Ma configuration WP actuelle (wordpress 4.7.1)

    • Version de PHP/MySQL : PHP 5.6.30
    • Thème utilisé : le mien déduit du thème enfold
    • Extensions en place : gravity form, Yoast SEO
    • Nom de l’hébergeur : STRATO
    • Adresse du site :

     

    Problème(s) rencontré(s) :

    Bonjour,

    J’ai le custom post typ suivant (partnerlieferanten) et ses catégories associés PartnerliefKategorien  (voir pièce jointe) :

    add_action( 'init', 'partnerlieferanten_module' );
     
    function partnerlieferanten_module() {
     
    	$labels = array(
    		'name' => __('Partnerlieferanten', 'post type general name'),
    		'singular_name' => __('Partnerlieferant', 'post type singular name'),
    		'add_new' => __('Add New', 'Partnerlieferanten'),
    		'add_new_item' => __('Add New Partnerlieferanten'),
    		'edit_item' => __('Edit Partnerlieferanten'),
    		'new_item' => __('New Partnerlieferanten'),
    		'view_item' => __('View Partnerlieferanten'),
    		'search_items' => __('Search Partnerlieferanten'),
    		'not_found' =>  __('No Partnerlieferanten found'),
    		'not_found_in_trash' => __('No Partnerlieferanten found in Trash'),
    		'parent_item_colon' => '',
    	);
    	 
    		$args_partnerlieferanten = array(
    		'label' => __('Partnerlieferanten'),
    		'singular_label' => __('Partnerlieferant'),
    		'public' => true,
    		'show_ui' => true,
    		'_builtin' => false, // It's a custom post type, not built in
    		'_edit_link' => 'post.php?post=%d',
    		'capability_type' => 'post',
    		'hierarchical' => false,
    		'rewrite' => array("slug" => "partnerlieferanten"),
    		'query_var' => "partnerlieferanten", // This goes to the WP_Query schema
    		'supports' => array('title','thumbnail'), //titre + zone de texte + champs personnalisés + miniature valeur possible : 'title','editor','author','thumbnail','excerpt'
    		);
    	 
    	register_post_type( 'partnerlieferanten' , $args_partnerlieferanten ); // enregistrement de l'entité evenement basé sur les arguments ci-dessus
    	
    	register_taxonomy(
    	  'PartnerliefKategorien',
    	  'partnerlieferanten',
    	  array(
    		'label' => 'PartnerliefKategorien',
    		'labels' => array(
    		'name' => 'PartnerliefKategorien',
    		'singular_name' => 'PartnerliefKategorie',
    		'all_items' => 'Alle Kategorien',
    		'edit_item' => 'Edit Kategorien',
    		'view_item' => 'Kategorien sehen',
    		'update_item' => 'Update Kategorien',
    		'add_new_item' => 'Add a Kategorie',
    		'new_item_name' => 'Neue Kategorie',
    		'search_items' => 'Rechercher parmi les types',
    		'popular_items' => 'Types les plus utilisés'
    	  ),
    	  'hierarchical' => true
    	  )
    	);
    	
    	register_taxonomy_for_object_type( 'PartnerliefKategorien', 'partnerlieferanten' );
    
    }

     

    Pour l’affichage, je demande à ce que le custom post typ soit affiché par ordre alphabétique :

     $args_partlief= array(
                	'post_type' => 'partnerlieferanten',
                	'orderby'   => 'meta_value',
                	'meta_key'  => 'firmennamen_partlief',
    				'order'     => 'asc',
    				'posts_per_page' =>-1,
    				);
    				
    	$the_querypartlief = new WP_Query($args_partlief);

    Cela fonctionne.

    Mais en fait, j’aimerai avoir un affichage comme le suivant :

    1- tri alphabétique des catégories

    2- pour une gatégorie, tri alphabétique des custom post typ

     

    Du coup j’ai essayé pas mal de chose….. en essayant de rester dans le “simple” comme

    	$args_partlief= array(
                	'post_type' => 'partnerlieferanten',
                	'orderby'   => 'term_order',
    		'order'     => 'asc'
    
    				);
    				
    				
    				
    				$the_querypartlief = new WP_Query($args_partlief);

    bon, là c’est juste un exemple qui fonctionne pas bien sûr….

    et je n’ai aps réussi à trouver….

    Comme fait on déjà pour avoir un tri alphabétique des catégories? même ça je n’ai pas réussi avec un WP_query !

     

    merci pour votre aide

     

     

     

    Fichiers joints :
    Vous devez être connecté pour voir les fichiers joints.
    #1617815
    Timama
    Participant
    Chevalier WordPress
    284 contributions

    alors , j’ai donc l’affichage de tous les custom post typ correspondant à la catégorie “fahrzuege”

     

               <?php  
    	  		$args_partlief = array(
    			'post_type' => 'partnerlieferanten',
    			'tax_query' => array(
    				array(
    					'taxonomy' => 'PartnerliefKategorien',
    					'field'    => 'slug',
    					'terms'    => 'Fahrzeuge',
    				),
    			),
    		);	
    				
    				
    				$the_querypartlief = new WP_Query($args_partlief);

     

    mais je voudrais faire un affichage de toute les catégories, classée par ordre alphabetique….humm je continue

    #1617825
    Timama
    Participant
    Chevalier WordPress
    284 contributions

    okay j’ai trouvé donc j’ai d’abord trier mes catégorie et j’ai inclu mon tri des CPT à l’intérieur

     

    <?php 
    //Je liste mes catégories
    $termes = get_terms("PartnerliefKategorien");
    $terms = get_terms( 'PartnerliefKategorien', array(
        'orderby'    => 'asc',
        'hide_empty' => 0
    ) );
    
    // DEBUT DE TRI PAR CATEGORIE
    foreach( $terms as $term ) {
     
     $categorie = $term->slug;
    
              
    	  		$args_partlief = array(
    			'post_type' => 'partnerlieferanten',
                'orderby'   => 'meta_value',
                'meta_key'  => 'firmennamen_partlief',
    			'order'     => 'asc',
    			'posts_per_page' =>-1,
    			'tax_query' => array(
    				array(
    					'taxonomy' => 'PartnerliefKategorien',
    					'field'    => 'slug',
    					'terms'    => $categorie,
    				),
    			),
    		);	
    				
    				
    				$the_querypartlief = new WP_Query($args_partlief);

    bien sûr je ferme les boucles

     

            while ($the_querypartlief->have_posts()) : 
    
    // AFFCHAGE DES CPT
    
    //ET JE FERME LES BOUCLES
    
    			}
    endwhile;
    wp_reset_postdata(); 
    
    } // FIN FOR EACH CATEGORIE	

     

    résolu !

3 sujets de 1 à 3 (sur un total de 3)
  • Vous devez être connecté pour répondre à ce sujet.