Ceci fait suite à ma question: " Comment puis-je avoir deux URL différentes pour la même page qui chargent deux modèles différents? "
En supposant que j'implémente la réponse de Milo (enregistrement d'un nouveau point de terminaison de réécriture, charge un modèle différent si le point de terminaison est présent), comment puis-je avoir des liens dans la page réécrits à la volée pour inclure le point de terminaison (par exemple, app-view).
La page à laquelle le noeud final initial serait ajouté est la suivante: https://liquidchurch.com/messages/
D'après les instructions de Milo utilisant le filtre de modèle de page et de terminaison de réécriture, l'URL que je transmettrais depuis l'application mobile serait: https://liquidchurch.com/messages/app-view/
Maintenant sur cette page, je clique sur l’une des séries, par exemple:
https://liquidchurch.com/sermon-series/divine-direction/
Le problème est que cela se chargera avec le modèle standard, pas avec le modèle créé en particulier pour la vue mobile. Il faut donc que je passe à cette page pour qu'elle soit affichée dans l'application. Ainsi, l'URL vers laquelle l'individu devrait être redirigé serait:
https://liquidchurch.com/sermon-series/divine-direction/app-view/
De quelle manière pourrait-on accomplir cela? Merci!
Vous pouvez utiliser le filtre page_link
avec la même logique que le filtre page_template
dans l'autre réponse. Si la requête de noeud final var est définie, tout lien vers une page reçoit le app-view/
ajouté:
function wpd_page_link( $link, $post_id ){
global $wp_query;
if( isset( $wp_query->query_vars['app-view'] ) ){
return $link . 'app-view/';
}
return $link;
}
add_filter( 'page_link', 'wpd_page_link', 10, 2 );