NB : Faire une sauvegarde de votre thème, de votre fichier et/ou votre base de données avant d’ajouter ces fonctions tutoriels.

Créer un lien personnalisé de page Template - Thème WordPress
Difficile
Hébergement Web Canada

Publié le : 03 décembre 2016 - Modifié le : 18 janvier 2022

Temps de lecture : 2 minutes, 0 seconds - 213 mots

Créer un lien personnalisé de page Template – Thème WordPress : Nous allons dans ce tutoriel se donner la possibilité de créer un lien personnalisé appelant une page Template, c’est-à-dire obtenir un <strong>get_page_link</strong>.

Bien sûr première des choses, c’est que nous allons construire notre page template dans la racine du thème qui affichera ce que l’on souhaite.

Créer une page Template : Ex : User Favorites

<?php
/**
 * Recent User Favorites
 *
 * This file contains the markup for recent entries displayed in the
 * 404 pages of the Prime theme.
 *
 * @package Nomdutheme
 */
?>

Ensuite nous allons dans notre WordPress créer notre page et sélectionner la page Template user Favorites que nous venons de mettre en place.

Nous allons utiliser une requête permettant de formaliser une page (Post type) et de la faire correspondre à une template Page par la meta Key <strong>_wp_page_template</strong> et y insérer comme valeur le nom de notre template Page (Remplacer <strong>user-profile.php</strong> par votre Template Page). c’est-à-dire qu’on lui demandera de retourner la page sur requête.

function viadirectory_userprofile_id() {
	$args = [
	'post_type'     => 'page',
	'fields'        => 'ids',
	'nopaging'      => true,
	'meta_key'      => '_wp_page_template',
	'meta_value'    => 'user-profile.php'
	];
	$pages = get_posts( $args );
	foreach ( $pages as $page ) 
	return $page;
}

Nous allons maintenant créer notre permalink personnalisé afin de loader la bonne template page. Et on peut même y ajouter une classe active s’il y a du CSS concerné.

Nous utilisons donc la function Word Press get_page_link puis y inclure notre function viadirectory_userprofile_id() qui retourne la requête page.

<ul>
 	<li style="list-style-type: none;">
 	<li class="<?php if (is_page_template('user-profile.php')) { echo 'active'; } else {}; ?>"></l>
</ul>

Voilà, vous avez donc un lien dynamique personnalisé qui load la bonne Template Page.

Laissez un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>