[Resolved] Add a page with php

Home Forums Support [Resolved] Add a page with php

Home Forums Support Add a page with php

Viewing 15 posts - 1 through 15 (of 17 total)
  • Author
  • #482352

    Is there a way to add a page containing php?
    I want to add a contact page with email form.
    I tried uploading the page (contact.php) to the theme folder, and the child-theme folder. However when I enter the url, it gives a 404 error.

    I could make a shortcode, but it will make my functions.php significantly larger and I hope to prevent that.

    And what part of page.php should I edit?
    Everything between do_action( 'generate_before_main_content' ); and do_action( 'generate_after_main_content' );?
    (Ofcourse I won’t actually edit page.php, but copy it, in order to use the same template).

    GeneratePress 2.0.2
    Customer Support

    Hi there,

    What are you trying to achieve?

    You might be able to add PHP using GP hooks and just target to specific page:

    Let me know if this helps.


    Using hooks with conditional tags probably will do the trick, but I’m not really enthusiastic about this solution. It would mean I have to write the entire code for this page in GP hooks;

    I want to display an email form on a contact-page, this code already takes up around 120 lines and there is more to be added. Therefor I would prefer a solution where I can upload a page to wp-content or my child-theme and visit it via url/url/contact.php.
    However, when I try this, I’m being referred to the 404 page.

    Lead Developer
    Lead Developer

    You could create a custom page template: https://developer.wordpress.org/themes/template-files-section/page-template-files/

    That’s probably the best method ๐Ÿ™‚


    A custom page template seems to be the way to go, thanks for pointing me in the right direction.

    One more question. How can I remove the featured image / background color on this page?
    This is the best result I had:

    As you can see the background color still exists, and I’d like to remove it.

    Lead Developer
    Lead Developer

    The white background color behind the “Contact” title?


    Sorry for the late reply. We made our website available for the public and were very busy with that.

    The white background is what’s supose to be there. Maybe the picture isn’t all that clear because I’m not using a featured image and in this case you only see the back-ground color/color-overlay of the featured image.

    What I want is to remove the featured image, just like the 404/forums/member-pages have no featured image.

    Lead Developer
    Lead Developer

    Is there any way you can link me to that page so I can take a closer look?


    Yes, I made an example for you.
    I actually added a message to the page for you Tom.
    Trying to explain what I want and what I’ve done so far.


    Thanks for looking into this.
    Best regards.

    Lead Developer
    Lead Developer

    So this is due to the page header being set globally to all pages.

    We can likely use a filter to disable it when on these specific custom post types – would that work for you?


    Certainly, that would work for me, can you tell me how I set this filter?

    Lead Developer
    Lead Developer

    I just went to write the function, but we need a conditional so we only disable it on specific pages. I thought the page was a custom page template, but it doesn’t look like it.

    Are you going to be disabling the page header on a lot of pages, or only a few?


    Hmm, strange? I did exactly as described in your link for making page templates.
    The test-page I made for you is in my child theme directory and is called page-test.php

    Ok I find out why, my bad.
    I forgot the template name: ... part on top of the page, my bad.
    Now it is a template as supposed to.


    Hi there,

    Is it possible this topic lost your attention?
    Still looking for a way to remove the featured image ๐Ÿ™‚

    I took another look at it and the page is now a template as supposed to.
    So your initial idea to write the function for specific custom template pages should work.

    Lead Developer
    Lead Developer

    Sorry about that! Not sure how I missed your last reply.

    Let’s try this:

    add_filter( 'generate_page_header_options', 'tu_remove_page_header_template' );
    function tu_remove_page_header_template( $options ) {
        if ( is_page_template( 'page-test.php' ) ) {
            $options['content'] = '';
        return $options;

    This assumes your custom page template is named: page-test.php

Viewing 15 posts - 1 through 15 (of 17 total)
  • You must be logged in to reply to this topic.