Pour récupérer TOUTES les catégories, ajouter ce bout de code :
$taxonomies = array('NOM_CATEGORIE');
$arg_taxo = array('orderby'=>'id', 'order'=>'ASC');
$categories = get_terms($taxonomies, $arg_taxo);
Pour récupérer SEULEMENT les catégories d’un post, ajouter ce bout de code :
$categories = wp_get_post_terms($post->ID, 'NOM_CATEGORIE', array("fields" => "all"));
foreach($categories as $categorie) echo $categorie->name;
Penser à remplacer : NOM_CATEGORIE
Et voilà !
Voici un bout de code permettant d’afficher un custom post avec une taxonomie spécifique et d’ajouter une pagination.
Penser à bien remplacer NOM_DU_CUSTOM_POST
par le nom de votre custom post, NOM_DE_LA_CATEGORIE
par le nom de votre catégorie et IDENTIFIANT_DE_LA_CATEG
par l’identifiant de votre catégorie.
/**** Affichage d'un custom post avec une taxonomie spécifique + pagination ****/
if(get_query_var('paged')){ $paged = get_query_var('paged'); }
else if(get_query_var('page')){ $paged = get_query_var('page'); }
else{ $paged = 1; }
query_posts(array(
'post_type' => 'NOM_DU_CUSTOM_POST',
'posts_per_page' => 10,
'order' => 'DESC',
'orderby' => 'post_date',
'tax_query' => array(
array(
'taxonomy' => 'NOM_DE_LA_CATEGORIE',
'field' => 'id',
'terms' => IDENTIFIANT_DE_LA_CATEG
)
),
'paged' => $paged,
'suppress_filters' => false,
));
if(have_posts()):
while(have_posts()) : the_post();
// La boucle des post
endwhile;
wp_pagenavi();
else:
// Aucun post
endif;
wp_reset_query(); // Reset Query
Et voilà !
Dernièrement, lors d’un projet sur WordPress, j’ai dû créer des articles via un xml. Pour ce faire, j’ai dû extraire le contenu d’un zip (situé à la racine du ftp) et importer le xml avec les images associées pour créer des articles.
I – Extraction du zip
Pour extraire le contenu du dossier zip, j’ai réalisée un plugin.
Pour ce faire, créez un dossier dans le dossier « plugins » de WordPress et nommez le (par ex import_des_annonces). Puis créez un fichier php avec le même nom (par ex : import_des_annonces.php).
Enfin, collez le code suivant :
function extract_zip(){
if ($zip->open('CHEMIN_ABSOLU/export_quimper.zip') === TRUE){
//extract contents to /data/ folder
$zip->extractTo('CHEMIN_ABSOLU/zip/');
//close the archive
$zip->close();
echo 'Archive extracted to zip/ folder!';
}else{
echo 'Failed to open the archive!';
}
}
add_action('extract_zip_hook', "extract_zip");
ATTENTION : remplacer « CHEMIN_ABSOLU » par le chemin vers votre fichier.
Pour trouver le chemin absolu :
- Créer un fichier « chemin.php » à la racine de votre ftp
- Écrivez celle ligne :
et sauvegarder votre fichier
- Ouvrez votre navigateur et allez voir ce fichier PHP. Il vous donne le chemin absolu, par exemple :
/home/site/www/admin/chemin.php
- Copiez le code SANS chemin.php et collez le dans le plugin à la place de « CHEMIN_ABSOLU »