Beginner's Guide for WordPress / Start your WordPress Blog in minutes

How to Create a Custom Page in WordPress

Do you want to create a custom page in WordPress?

A custom page lets you use a different layout from the rest of your website. Many WordPress sites use custom page layouts for their sales pages, landing pages, webinar pages, and more.

In this article, we will show you how to easily create a custom page in WordPress.

How to create a custom page in WordPress

Why Create a Custom Page in WordPress?

Every time you create a new page, your WordPress theme controls how that page looks using a template file.

This page.php template affects all single pages that you create in WordPress. However, you may not want to use the same design every single time.

Landing pages often have different content compared to regular pages, such as a large hero image or a call to action (CTA). This means they often look completely different from the rest of your website. 

Trying to create unique designs using the standard page template can take a lot of time.

You’re also limited by the template, and may not be able to achieve the exact design you want. This can make it difficult to get good results. For example, if you’re building a sales page then you may not get many conversions.

With that being said, let’s see how you can create a custom page in WordPress, with the exact design, layout, and content you want. Simply use the quick links below to jump straight to the method you want to use.

Method 1. How to Create a Custom Page in WordPress Using the Block Editor (No Plugin Required) 

The block editor makes it easy to design your own templates using the tools you’re already familiar with.

However, this method only works with block-enabled themes. If this method doesn’t work with your theme, then we recommend using a page builder instead.

To start, simply open any page or post. Then, click on the ‘Page’ tab in the right-hand menu and click to expand the ‘Template’ section.

Go ahead and create a custom template by clicking on the ‘New’ link. 

Adding a template in the WordPress editor

In the popup that appears, type in a name for your template and then click on ‘Create.’

The name is just for your reference so you can use anything you want.

Creating a new template in the WordPress block editor

This launches the template editor, which works similarly to the standard block editor.

To add blocks to your custom page design, simply click on the blue ‘+’ button. You can then drag and drop to add blocks.

Editing a WordPress template using the block-based editor

You can add content to a block or change its formatting using the familiar WordPress post editing tools. For example, you can type text into a ‘Heading’ block and apply bold formatting or change it from H2 to H3.

You can also create a custom page using patterns. Patterns are collections of blocks that are often used together, such as a list of events, an image with a caption, or a pricing table.

The patterns you see will vary depending on your WordPress theme, but you can see which patterns are available by clicking on the ‘Patterns’ tab.

A selection of patterns in the WordPress editor

 You can either drag and drop a block pattern onto your layout or click on the pattern to add it to the bottom of your template. When you’re happy with how the template looks, click on the ‘Publish’ button and then click on ‘Save.’

You can now apply this template to any page. Opening that page in the editor, and then in the right-hand menu open the ‘Template’ dropdown and choose the custom template you just created.

You can now add content to the page just like any other WordPress page, to create a completely custom page in WordPress. When you save the page, you can visit your site to see the new template in action. 

Method 2. How to Create a Custom Page in WordPress using SeedProd (Recommended) 

In the past, you created a custom page by writing code, which wasn’t very beginner-friendly. If you made a mistake with your HTML, CSS, or PHP code then it might even cause common WordPress errors or completely break your site. 

With that in mind, we recommend using a page builder instead.

SeedProd is the best drag-and-drop page builder for WordPress. It comes with more than 180 templates that allow you to create custom pages without writing any code. 

If you’re using a custom page to get more conversions, then SeedProd works with many popular third-party tools you may already be using to manage conversions. This includes top email marketing services, WooCommerce, Google Analytics, and more.

First, you need to install and activate SeedProd. For more details, see our step-by-step guide on how to install a WordPress plugin.

Note: There’s also a free version of SeedProd that allows you to create custom pages if you’re on a tight budget and just getting started. However, for this guide, we’ll be using SeedProd Pro since it has lots more templates and integrates with all of the best email marketing services.

After activating the plugin, SeedProd will ask for your license key.

SeedProd license key

You can find this information under your account on the SeedProd website. After entering the key, click on the ‘Verify Key’ button.

Once you’ve done that, go to SeedProd » Landing Pages and click on the ‘Add New Landing Page’ button.

SeedProd's page design templates

You can now choose a template for your custom page.

SeedProd’s templates are organized into different campaign types such as ‘lead,’ ‘squeeze,’ and ‘coming soon.’ You can click on the tabs at the top of the screen to filter templates based on campaign type. 

The SeedProd template library

If you want to start from scratch, then SeedProd also has a blank template that you can use.

To take a closer look at any design, simply hover your mouse over that template and then click on the magnifying glass icon.

Previewing a ready-made template

When you find a design that you like, click on ‘Choose This Template.’ We’re using the ‘Course Sales Page’ template in all our images, but you can use any template you want.

Next, go ahead and type in a name for the custom page. SeedProd will automatically create a URL based on the page’s title, but you can change this URL to anything you want.

A descriptive URL will help search engines understand what the page is about, so they can show it to the right users.

When you’re happy with the information you’ve entered, click on the ‘Save and Start Editing the Page’ button.

Creating a custom page for your WordPress website

To give your custom page the best chance of appearing in relevant search results, you may want to add any keywords that are missing from the URL. For more details, please see our guide on how to do keyword research.

This will load the SeedProd page builder interface. It is a simple drag-and-drop builder and shows a live preview of your page to the right. You will also see block settings on the left.

The SeedProd courses template

To customize a block, simply click to select it in the page editor. The left-hand toolbar will then show all the settings for that block.

For example, here we’re changing the text inside a ‘Headline’ block.  

Editing the headline for your custom page

You can format the text, change its alignment, add links, and more using the settings in the left-hand menu.

It’s also easy to edit images using the SeedProd page builder. Simply click on any ‘Image’ block and use the settings to add alt text, upload a new image, or make any other changes. 

Editing images in a custom page design

If you want to remove a block from your custom page, then simply click to select that block.

Then, you can click on the trash can icon in the mini toolbar. 

Removing a block from a SeedProd custom page

To add new blocks to your design, just find a block in the left-hand menu and then drag it onto the editor.

You can then click to select the block and make any changes in the left-hand menu. 

Adding a social sharing block to WordPress

SeedProd also comes with ‘Sections,’ which are rows and block templates that can help you create a custom page, fast. For example, if you were designing a Google Ad landing page, then you might use SeedProd’s ready-made Hero, Call To Action, or Features sections.

To see all of the available sections, simply click on the ‘Sections’ tab.

SeedProd's ready-made sections

To take a closer look at a section, hover your mouse over it and then click on the magnifying glass icon.

When you find a section that you want to add to your design, simply move the mouse over it and then click on the little ‘+’ icon.

Adding a section to a custom page

This adds the section to the bottom of your page. You can move both sections and blocks around your design using drag and drop.

If you make a mistake or change your mind, then don’t worry. You can reverse your last change by clicking on the ‘Undo’ button at the bottom of the left-hand toolbar.

Here, you’ll also find a redo button, revision history, layout navigation, and global settings.

The SeedProd global settings bar

These extra buttons make it easy to create a custom page in WordPress. 

At the bottom of the toolbar, you’ll also find a mobile preview button that allows you to view the mobile version of the custom page. 

Previewing a custom page on mobile

This can help you design a custom page that looks just as good on mobile devices as it does on your computer.

When you’re happy with the custom page, it’s time to publish it by clicking the dropdown arrow next to ‘Save’ and then select the ‘Publish’ option. 

Publishing a custom page

Your custom page will now go live on your WordPress blog.

If you want to edit the custom page at any point, then just go to SeedProd » Landing Pages in your WordPress dashboard. You can then find the page that you want to change and click on its ‘Edit’ link.

Fine-tuning a custom page in WordPress

This will open the design in SeedProd’s editor, ready for you to make your changes.

Method 3. Using Beaver Builder to Create a Custom Page in WordPress

You can also create a custom page using Beaver Builder. We recommend using the professional version, but there’s also a free version of Beaver Builder that has limited features.

First, you need to install and activate the plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.

Upon activation, go to Settings » Beaver Builder. Then, click on the ‘License’ tab.

Adding a license key in Beaver Builder

Here, simply enter the license key, which you’ll find in your account on the Beaver Builder website. You can then go ahead and click on ‘Save License Key.’

To create a custom page, simply head to Pages » Add New in your WordPress admin dashboard. Then, click the ‘Launch Beaver Builder’ button.

Launching the Beaver Builder page editor

This will open the Beaver Builder editor.

If the right-hand menu doesn’t open automatically, then click on the ‘+’ in the top-right corner to open it.

Adding blocks and modules in the Beaver Builder page builder

This menu has all the different modules and rows that you can add to your custom page. Similar to SeedProd’s blocks, these are the core parts of any Beaver Builder page.

When you find a block or module that you want to use, drag and drop it onto the page editor. 

Another option is to start with a template. To see all the different Beaver Builder designs, just click on the ‘Templates’ tab.

You can then click on any template to add it to the page. 

Beaver Builder's pre-built templates

To edit any part of a template, simply click on it. For example, you can change the text, images, colors, and more.

In the following image, we’re editing the page heading. Beaver Builder’s editing process isn’t quite so smooth as SeedProd’s, so you’ll need to make your changes in the separate popup box that appears.

Creating a custom page with Beaver Builder

When you’re happy with how the custom page looks, click on the ‘Done’ button.

You can then save the post as a draft, or publish it so it shows up on your WordPress website.

Publishing a custom page design

Method 4. Creating a Custom Page Template Manually

You can also create a custom page template manually in WordPress. Similar to the page.php file, this template allows you to control how the page looks.

This method does require you to write some code, so it’s not the most beginner friendly option. However, it does allow you to create a custom page without having to install a new plugin.

If you only want to create a small number of custom pages, then you may prefer to write code rather than set up a page builder plugin.

To start, open a plain text editor like Notepad on your computer. In the blank file, add this line of code at the top:

<?php /* Template Name: CustomPageT1 */ ?>

This code simply tells WordPress that this is a template file called ‘CustomPageT1.’ You can name the template anything you want.

Now, add all the code for the custom page layout. This template is exactly the same as any other theme file in WordPress so you can add HTML, template tags, and PHP code.

To help you code the template file, you may want to copy the existing page.php template provided by your theme. This can save you time and helps the custom page blend in with the rest of your WordPress website.

The easiest way to copy the page.php code, is by connecting to your server using an FTP client such as FileZilla, or you can use the file manager of your WordPress hosting platform such as cPanel or SiteGround‘s Site Tools. 

If this is your first time using FTP, then you can see our complete guide on how to connect to your site using FTP

Once you’re connected, go to /wp-content/themes/ and open the folder for your current theme. Inside this folder, find the page.php file and open it in any text editor.

The FileZilla FTP client

You can use this code as the basis of your custom template, and can even paste the code into your new template file.

If you do paste the code, then don’t copy the page.php header text, which is the part that’s commented out at the top of the file.

You can create any layout you want, but here’s an example of a simple custom page layout that we’re going to use on our site: 

<?php /* Template Name: CustomPageT1 */ ?>
<?php get_header(); ?>
<div id="primary" class="content-area">
    <main id="main" class="site-main" role="main">
        // Start the loop.
        while ( have_posts() ) : the_post();
            // Include the page content template.
            get_template_part( 'template-parts/content', 'page' );
            // If comments are open or we have at least one comment, load up the comment template.
            if ( comments_open() || get_comments_number() ) {
            // End of the loop.
    </main><!-- .site-main -->
    <?php get_sidebar( 'content-bottom' ); ?>
</div><!-- .content-area -->
<?php get_sidebar(); ?>
<?php get_footer(); ?>

You can now save the file. You can use any name you want, but make sure you end the file with the .php extension.

Although you can add this file to any WordPress theme, it’s a good idea to create a child theme based on your current theme. In this way, you can update your WordPress theme without losing customization

In your FTP client or file manager, simply upload the custom template to your current theme’s directory. Once you’ve done that, it’s time to create a new page in the WordPress dashboard or open any page where you want to use the template.

In the right-hand menu, click on the ‘Page’ tab and then click to expand the ‘Templates’ section, if it isn’t already expanded.

Changing the WordPress page template

You can then open the dropdown menu and select the template you created.

To add actual content to your custom page, simply edit the page as normal. When you’re happy with how everything looks, you can either click ‘Update’ or ‘Publish’ to push it live to your site. 

We hope this article helped you learn how to create a custom page in WordPress. You can also go through our guide on the must have WordPress plugins for your website and how to increase your blog traffic.

If you liked this article, then please subscribe to our YouTube Channel for WordPress video tutorials. You can also find us on Twitter and Facebook.

Disclosure: Our content is reader-supported. This means if you click on some of our links, then we may earn a commission. See how WPBeginner is funded, why it matters, and how you can support us.

The Ultimate WordPress Toolkit

Get FREE access to our toolkit – a collection of WordPress related products and resources that every professional should have!

Reader Interactions

229 CommentsLeave a Reply

  1. Thanks for the great article. I often use your site for assistance with WordPress.
    I followed your tutorial to manually create a new template file. When selecting the template there is no CSS attached to the page. Did I miss something?

    • It would depend on the specific theme you’re using, if you check with your theme’s support they should be able to let you know why their CSS is not being applied to your page properly.


  2. Perfect article.
    I have a q
    can i make a custom page and then make it the main website page or Home page?
    I don’t like to have too much content in my firs page and i want to make every thing in the main home page by my own ( i mean with HTML, CSS, JS ).
    is there any way to do that?

    • For customizing everything in that manner you would want to look at the method for manually creating a page template :)


  3. Is there a way to use an existing page (including all its content and images) and use this plugin to remove the menu and title link?

    • We show two plugins in this guide, you can certainly recreate a page using them for what it sounds like you want.


  4. Excellent Article!
    Just one question. After you finish the landing page do you still need the plugin in the plugin folder or is it safe to delete after you create the page.

  5. Hello,

    Thank you for the easy tutorial. It worked so well.

    I have one question though. How do you make the custom page you create have its own separate sitemap on the website´s sitemap.xml? Like for example in´s sitemap the /hosting-sitemap.xml etc. is it a custom page?

  6. I´ve already done this before and it worked, I know that many things can remove the file from where it was but my problem is that it doesn´t allow me to do it again. When I upload the custom page to the server it doesn´t appear on the template options when editing the page. Does someone knows how to solve this?

    • The most common reason you would want to check is that you haven’t used the same template name and that you’ve uploaded the file to the correct location.


  7. How do we change header path, as I have 2 different headers, so in my custom template I want to use other header, please let me know, how to call or bring header

    • That would depend on your specific theme and would require some coding knowledge that would not be beginner-friendly.


  8. What happens to your custom templates when you update your theme? Since you’re creating that new template within the theme folder. Will the new template be gone?

  9. Hi,

    I can’t seem to find page.php in wordpress twentytwenty. Any idea where the template file?


  10. I really appreciate your help that’s really exactly what I was looking for, thanks so much!

  11. Hi,

    Great article ! I already create the page template and now I want to make this page only page that does’nt have sidebar when i use this page template. How? Can you help me?

    Thank you.

    • It would depend on your current theme, if you reach out to your theme’s support they should be able to assist


  12. Hi-

    So close. I have zipped my php file created in notpad++. The contents are the 1 line of code at the top of this article. I click add new theme and upload the zip file. When I click install it starts ok but ends in error. Can you suggest a fix? How do I add the style.css stylesheet? (Sorry, I’m a newbie!)

    • You would want to go through the article again, this guide is for creating a new page for your current theme not an entirely new theme :)


  13. Thanks for this. It was helpful.

    I want to know if there is a way to remove the wordpress header without messing up the page.

    • It would depend on your specific theme for any issues that would cause. You would likely want to test on a local installation or on a staging environment to see if it would break anything.


    • Page templates control the area around the content, the editor under Pages>Add New is for the content on the page.


  14. Thanks for this tutorial! Is it possible to edit the custom page with Elementor? I get an error “The preview cannot be loaded.”

    • You may need to recreate the custom page template with Elementor or reach out to Elementor’s support and they should be able to assist :)


  15. Hi – my problem is the template dropdown menu does not display. The theme displays only: Page attributes / parent / order — whereas I need it to display: Page attributes / parent / Template / order. Do you know how I can get the templates dropdown to display?

    • Your theme may not have page templates by default as otherwise, they would be under the Page Attributes section.


  16. thank you admin for always writing great articles on WordPress and SEO.i have a question to ask i hope you help me.

    Can we use PHP, Osclass Or Other themes in a WordPress Created classified website?


  17. Please, i need your assistance, i have my website build myself but i am having issues which i know you can help me cause i built my site watching all your videos and article. i want to create the home page then use the home on my MENU on my website so that when people finish reading an article and they want to return home they can easily click on home and return to the home page. please, i need your help on this.

    • If you’re using the block editor then you would want to ensure you’re editing the document. If it is not displaying correctly then you would want to double check the file name and that the file was correctly added to your files.


  18. Hi, maybe a stupid question but do I have to create a child theme for this? Or is it protected from theme updates because it is a separately built page?

    • It would be best to use a child theme for this as it would be a file not found in the most recent version of the theme when you’re updating


  19. Hi! And thanks for your incredibly helpful and resourceful page! I’ve read lots of articles and learned a lot around your site :)

    Using your guide I created my custom page for my “blog” section (page with the most recent posts that doesn’t have the slider or other features that the Home page has).

    My website is bilingual, so I’d like to translate this custom page to my second language… and I can’t find the way to do it.

    Your help would be much appreciated.

    Thanks in advance!

    • You can add an HTML page to the website but I wont be a part of the theme. It has to be a .PHP to be part of the theme.

  20. I had the same problem. Try another theme, and make sure you upload the file in the right directory. You can see the directory on top when you add a sample page.

    • at the top you see screen options just click on it and check the box says page attributes and now you can see template option

  21. Nice and helpful instructions, but i want to load template from my plugin, when i add the .php file inside my plugin wordpress not showing the drop down .

  22. Thank you!!! This is so clear and simple and straight forward. I was able to set up a new page temple in under 5 min. I really appreciate what you guys do – and whoever did this video has a great voice and speaks very well for instructions.

  23. Thanks a lot for this, this post helped while i was creating a custom them which needed me to create a number of custom pages. thumbs up for this!

  24. Great tutorial!

    I love to see how do you have to create custom pages :) Like table ( flex-wrap with div or about page.

    I already made AboutMe-Page with css-embedded picture and more custom pages. That is really excellent! WordPress makes us rich, right?

    WordPress is like darling / sweetheart :P Because we want make our blog-websites with money from internet.

    And how do I fix contactform of WPForm? Why does WPForm not send e-mail to my google mail. I want try if it works.

    Thanks for nice explanations with your nice videos. I am really happy because you save my life and make me reality.

    Best kind regards,

    Jens Eckervogt

  25. Are plugins compatible with custom page templates?

    For example, if I were to add custom content directly to my page template via a text editor, then upload and select it for the appropriate page (say contact page), how would a plugin (say a contact form), be placed into the custom page?


  26. Hi I’m converting HTML template to WORDPRESS,in the i have nave menu like Home,About Us,Courses,Gallery etc,i’m not getting anything when i click on these pages,please help me out

  27. Hey.. I needed this to create a page with no header and footer etc different to my template and with a little tweaking it worked perfeclty. Great. Thanks, P

  28. Hello, Thanks Wpbeginner for all the tutorials. With your tutorials I build a website for the very first time by myself and its going great. I learned so much from you guys.

  29. Hey i want to make a WordPress page that goes like this :

    I cant do that by edditing the permalink, any advice?

  30. Hi i have create a wordpress theme from scratch I create a new template call custom template it’s work but when I create a new page in admin panel the content of text does not show but it dispay only the header and footer of my new page.

    Any idea please.

    Thank you!

  31. Good :) And also happy to see that One from Pakistan Helping the word :)

    I’m really getting grounded but this post is very excellent


  32. Thank you for the tutorial. I am happy to learn new stuff step by step.
    But, When I preview the page with the new template, I don’t have a white page, I have my default theme loaded.

    How can I change that?

Leave A Reply

Thanks for choosing to leave a comment. Please keep in mind that all comments are moderated according to our comment policy, and your email address will NOT be published. Please Do NOT use keywords in the name field. Let's have a personal and meaningful conversation.