Support » Fixing WordPress » including files in pages

  • I want to reuse a what’s new file on a number of pages. The only reference I found for including files was in templates, so I am trying in my page (not template):

    <?php include(TEMPPATH . '/includes/whatsnew.html'); ?>

    where /includes/mypage.html is added to my template directory.

    But this does not work. Any advice appreciated

    Thanks, Tom.

Viewing 8 replies - 1 through 8 (of 8 total)
  • I’ve also tried without success
    <?php include($_SERVER[‘DOCUMENT_ROOT’].”/includes/whatsnew.inc”); ?>
    where I have created an includes folder containing whatsnew.inc off my root

    You can’t use php in a post or page without a plugin.

    http://wordpress.org/extend/plugins/exec-php/

    A better way would be to put the include in a custom page template and use it for just these pages.

    http://codex.wordpress.org/Pages#Creating_Your_Own_Page_Templates

    Are your includes entire html documents? Try instead using php documents containing only the code that you want included (not an entire document). I put my include php files in my theme’s folder and then use TEMPLATEPATH.

    http://codex.wordpress.org/Include_Tags

    The file is actually more an .inc file, it includes a html table and contents only, but not body tag, etc.

    I want to update this document regularly. It’s included in 2 places which is why I want to do an include. It seemed to me that there had to be a better way than including in the TEMPLATEPATH as there is no relation to the theme and then you have to move it when you change themes.

    I was under the impression wordpress was more flexible. Anyway, thanks.

    @iridiax, ok, following Creating_Your_Own_Page_Templates I set up a whatsnew.php in my templates directory. This help page you reference also says “Although you can put Template Tags and PHP code into a Page Template, you cannot put these into the content of a Page and expect them to run.”. I have not been able to figure out how to include it in my _page_ – your post suggested to me it was possible to do this via templates rather than having to use the plugin…

    Use the include in the template, the template should allow an include…

    Effectively you have the page template file, aswell as your include, but the template is simply performing the include for you..

    I think that’s what iridiax might have been getting at…

    So your page template simply does…

    include (TEMPLATEPATH . '/yourfile.php'); <– Example…

    The point being, that the page template should allow the include…. giving you what you want..

    @iridiax, ignore the last 2 posts. so, following Creating_Your_Own_Page_Templates I set up a whatsnew.php in my templates directory, containing the first 5 lines, followed ny pages.php with my table code inserted. I put in in my particular template directory…sure enough when I edit the page I can select the template. Work’s great, thanks a lot! WordPress is flexible, what am I saying!

    Crosspost, there @t31os, thanks, your post set me straight. In the template file I include the ‘include’ rather then the table and that way I can reuse it as planned. Spot on.

    Got there in the end, and that’s what matters.. 🙂

Viewing 8 replies - 1 through 8 (of 8 total)
  • The topic ‘including files in pages’ is closed to new replies.