web-dev-qa-db-fra.com

Comment charger une nouvelle page de modèle en fonction d'une URL particulière?

Je souhaite charger certaines des pages (pas une page wordpress, un fichier modèle autre que le fichier modèle par défaut de wordpress) en fonction de l'URL figurant sur la barre d'adresse.

par exemple, j'ai une page dans mon fichier de modèle, à savoir my_account.php, pour afficher la photo de mon profil et d'autres informations depuis mon fichier wordpress. et il est placé dans mon dossier de thème par défaut

/themes/mytheme/my_account.php

Lorsque l'URL est http://mysite/MyAccount/, je dois alors charger la page ci-dessus. Quelque chose comme si http://mysite/register/ puis chargez le register.php à partir de mon dossier de thème.

J'utilise l'option de permaliens custome. http://mysite/hello_world_post/

Alors, comment puis-je configurer et charger le modèle en fonction de l'URL, comment contrôler cela en utilisant un plugin.

1
coderex

Vous devriez pouvoir utiliser template_redirect. Je ne l'ai pas testé cependant, devrait être quelque chose comme ça.

function page_redirect() {
    if ($_SERVER['REQUEST_URI'] == 'your_url')  {

        require(TEMPLATEPATH . '/mY-account.php');

    }
}
add_action('template_redirect', 'page_redirect');
2
Patriek

Voir ceci: http://codex.wordpress.org/Pages#Templates_by_page-ID_or_page-Slug

Le plus facile est par limace. Par exemple, si votre http: // mysite/register/ slug est register, créez un modèle de page personnalisé page-register.php.

BTW, je ne savais pas que vous pouvez utiliser _ pour permalink? Brancher?

1
zeo