• Hi,

    is there a way to override the selected default template of a page ?

    I’ve got a page with a template called “alternative-page”.

    What, if I want to display that page with another template, let’s say the normal “page.php” ?

    I think of a link like: mypage.com/?page_id=10&template=something

    Should be possible… ?!

    Thanks again for helping

Viewing 6 replies - 1 through 6 (of 6 total)
  • You can create a new template and then select it to be the template for the page.

    https://codex.www.ads-software.com/Pages#Creating_Your_Own_Page_Templates

    The entire article is really helpful too.

    Or you can create a file for that particular page…

    When looking at a page, WordPress first checks if page-ID.php exists, if not it moves along to page.php, then if that doesn’t exist it refers to index.php ….

    WHERE ID = the page ID…

    Not sure if that helps, but thought i’d mention it..

    Can’t you just use the Pages control panel to switch the ‘alternative-template’ page to use ‘page.php’ as its template file? Lets say you have a page named ‘Alt’ which uses the ‘alternative-template’ file. Go to Pages->Edit and click to edit ‘Alt’. Then look on the right sidebar under ‘Attributes’. You should see ‘Template’. Switch that to the ‘Page’ template. After that ‘Alt’ will use the ‘Page’ template.

    If you want to switch template file dynamically you’ll have to catch that url string before the template loads and redirect– maybe by hooking to ‘template_redirect’– but I’m not sure about that. I’ve never tried to do anything similar.

    Thread Starter gegenalles

    (@gegenalles)

    Thanks for your help!

    @kwbridge: Yes, i’ve read this… But I’d like to be more flexible. I want to call the page one time with template “A” and next time with template “B”.

    Anybody knows a plugin for that issue? Maybe?

    If the difference between the templates you want to load is just a matter of CSS then you could selectively, and easily, load stylesheets instead of trying to load different templates altogether.

    Thread Starter gegenalles

    (@gegenalles)

    Thank you @apljdi.
    I’ve got some pages that are loaded “modal” (‘lightbox-style’) via ajax. For that issue I made a template for that page that just contains the “the_content()”-tag. No header, no sidebar, no Footer.
    If I want to display such a page “non-modal”, I have to find a way to display them as “normal” sites.
    I thought that it’s an easy way to ajaxify my wordpress-site. For my html-request I need a html-fragment without header, footer and sidebar.

Viewing 6 replies - 1 through 6 (of 6 total)
  • The topic ‘Override a page’s default template ?’ is closed to new replies.