19 Mar Développement d’un plugin WordPress
Etape 1 :
On crée un dossier dans notre répertoire wp-content/plugins/
Nom du dossier par exemple : liste-portfolios
Maintenant on va créer un fichier portfolio-list.php
<?php /** * Plugin Name: Liste des portfolio * Plugin URI: https://www.NOM_DU_VOTRE_SITE.com/ * Description: Une petite description du votre plugin. * Version: 1.0 * Author: Kadri Hamza * Author URI: http://SITE_WEB_DU_PLUGIN.com/ **/
=> Cette partie est obligatoire dans chaque plugin WordPress
Etape 2 :
La Création d’une fonction qui contient le post-type , Taxonomy , l’affichage dans le menu du back-office , l’icone , les labels , et les autres paramètres du notre plugin
function register_cpt_portfolio_p() {
$labels = array(
'name' => _x( 'Portfolio', 'portfolio_p' ),
'singular_name' => _x( 'Portfolio Review', 'portfolio_p' ),
'add_new' => _x( 'Add New', 'portfolio_p' ),
'add_new_item' => _x( 'Add New Music', 'portfolio_p' ),
'edit_item' => _x( 'Edit Portfolio', 'portfolio_p' ),
'new_item' => _x( 'New Portfolio', 'portfolio_p' ),
'view_item' => _x( 'View Portfolio', 'portfolio_p' ),
'search_items' => _x( 'Search Portfolio', 'portfolio_p' ),
'not_found' => _x( 'No Portfolio found', 'portfolio_p' ),
'not_found_in_trash' => _x( 'No Portfolio found in Trash', 'portfolio_p' ),
'parent_item_colon' => _x( 'Parent Portfolio:', 'portfolio_p' ),
'menu_name' => _x( 'Portfolio', 'portfolio_p' ),
);
$args = array(
'labels' => $labels,
'hierarchical' => true,
'description' => 'Portfolio',
'supports' => array( 'title', 'editor', 'author', 'thumbnail', 'trackbacks', 'custom-fields', 'comments', 'revisions', 'page-attributes' ),
'taxonomies' => array( 'category' ),
'public' => true,
'show_ui' => true,
'show_in_menu' => true,
'menu_position' => 5,
'menu_icon' => 'dashicons dashicons-star-empty',
'show_in_nav_menus' => true,
'publicly_queryable' => true,
'exclude_from_search' => false,
'has_archive' => true,
'query_var' => true,
'can_export' => true,
'rewrite' => true,
'capability_type' => 'post'
);
register_post_type( 'portfolio_p', $args );
}
add_action( 'init', 'register_cpt_portfolio_p' );
function category_taxonomy() {
register_taxonomy(
'category',
'portfolio_p',
array(
'hierarchical' => true,
'label' => 'Catégories',
'query_var' => true,
'rewrite' => array(
'slug' => 'category',
'with_front' => false
)
)
);
}
add_action( 'init', 'category_taxonomy');
Liste des icones en WordPress : cliquer ici
Etape 3 :
Il faut maintenant activer notre plugin dans la partie plugins dans le back-office.
Etape 4 :
On a plusieurs manières de l’afficher dans le front , par exemple on crée un shortcode qui contient la liste des portfolios et on l’utilise après.
=> Si vous avez rencontrez un erreur de 404 lors de l’affichage du votre portfolio , il faut juste mettre à jour le permaliens situé dans réglages/