J'essaie d'ajouter plusieurs points de terminaison dans une URL, par exemple:
http: // localhost: 1000/manage-lead/lead_id/1000/product_id/123455
Mais de cette manière, la requête var lead_id
est égale à 1000/product/123455
et non pas 1000
.
Quand je le fais de la manière suivante, tout va bien:
http: // localhost: 1000/manage-lead/lead_id/1000 /? product_id = 123455
Je pense donc que je dois ajouter des règles de réécriture. Wordpress comprend donc que lead_id et product_id sont deux vars de requête.
Comment j'ajoute mes points de terminaison:
function add_lead_management_endpoints() {
add_rewrite_endpoint( 'lead_id', EP_PAGES );
add_rewrite_endpoint( 'product_id', EP_PAGES );
}
add_action( 'init', 'add_lead_management_endpoints' );
Pas sûr du contexte pour cela, s'agit-il d'un type d'article personnalisé ou juste d'une page?
C'est peut-être quelque chose que vous recherchez -
function add_lead_management_endpoints() {
add_rewrite_rule(
'manage-lead/lead_id/([0-9]{1,})/product_id/([0-9]{1,})',
'index.php?pagename=manage-lead&lead_id=$matches[1]&product_id=$matches[2]',
'top'
);
add_rewrite_tag( '%lead_id%', '([^&]+)' );
add_rewrite_tag( '%product_id%', '([^&]+)' );
}
add_action( 'init', 'add_lead_management_endpoints' );
Vous aurez besoin de vider les permaliens pour que cela prenne effet (visitez les paramètres -> permaliens).