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.
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.
However, trying to create unique designs using the standard page template can take a lot of time. You’re also limited by the page.php template, and may not be able to create 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 due to poor page design.
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)
- Method 2. How to Create a Custom Page Using the Full-Site Editor (Block-Based Themes Only)
- Method 3. Create a Custom Page in WordPress using SeedProd (Recommended)
- Method 4. Using Thrive Architect to Create a Custom Page in WordPress
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.
This is a good choice if you plan to reuse the same design across multiple pages, as you can simply apply the same template. If you want to create a completely unique design, then another option is to create the page as normal and then edit its layout using the full-site editor, which we’ll cover in Method 2.
Just be aware that these methods only work with block-based themes such as ThemeIsle Hestia Pro or Twenty Twenty-Three. If you don’t have a block-based theme, then we recommend using a page builder instead.
To start, simply open any page or post. Then, select the ‘Page’ tab in the right-hand menu and click on the text next to ‘Template.’
The options you see may vary depending on your WordPress theme, but the text will typically show ‘Page,’ ‘Default template,’ or similar.
In the popup that appears, click on the ‘Add Template’ icon.
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.
This launches the template editor, which works similarly to the WordPress content editor.
To add blocks to the custom page design, simply click on the blue ‘+’ button. You can then drag and drop to add blocks.
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, apply bold formatting, or change text 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.
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. Simply open the page in the editor, and then click on the text next to ‘Template.’
In the popup that appears, select the template the template you just created.
With that done, you can add content to the page, just like any other WordPress page.
Method 2. How to Create a Custom Page Using the Full-Site Editor (Block-Based Themes Only)
If you’re using a block-based theme, then you can also create a custom page using the full-site editor. This allows you to change the layout of an individual page, without creating a custom template.
With that in mind, this is a good choice if you want to create a completely unique design that you won’t reuse on any other page.
To get started, simply create the page as normal by going to Pages » Add New. You can then type in a title, add categories and tags, upload a featured image, and make any other changes you want.
When you’re happy with the basic page, save your changes and then head over to Appearance » Editor.
By default, the full site editor shows your theme’s home template.
In the left-hand menu, click on ‘Pages.’
You’ll now see all the pages you’ve created on your WordPress website.
Simply find the page you want to re-design and give it a click.
WordPress will now show a preview of the design.
To go ahead and edit this template, click on the small pencil icon.
You can now edit the page’s layout using the full-site editor tools. For example, you can click on the blue ‘+’ button to add new blocks, or click to select any block you want to customize.
When you’re happy with the changes you’ve made, click on the ‘Save’ button.
Now, if you visit this page on your website you’ll see the new page design in action.
Method 3. 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 could cause common WordPress errors or even break your site completely.
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 350 templates, allowing 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 get 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 no matter what your budget. However, for this guide, we’ll be using SeedProd Pro since it has lots more templates and integrates with all the best email marketing services.
After activating the plugin, SeedProd will ask for your license key.
You can find this information under your account on the SeedProd website. After entering the key, click on the ‘Verify Key’ button.
Choose a Custom Page Template
Once you’ve done that, go to SeedProd » Landing Pages and click on the ‘Add New Landing Page’ button.
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.
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.
When you find a design 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 also help search engines understand what the page is about so they can show it to the right users, which will improve your WordPress SEO.
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.
When you’re happy with the information you’ve entered, click on the ‘Save and Start Editing the Page’ button.
Design Your Custom Page
SeedProd will now open your chosen template in its user-friendly drag and drop editor. You’ll see a live preview of your page to the right, and some block settings to the left.
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.
In the following image, we’re changing the text inside a ‘Headline’ block.
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.
If you want to remove a block from the custom page, then simply click to select that block.
Then, click on the trash can icon in the mini toolbar.
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.
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 the available sections, simply click on the ‘Sections’ tab.
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.
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.
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.
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 selecting the ‘Publish’ option.
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.
This will open the design in SeedProd’s editor, ready for you to make your changes.
Method 4. Using Thrive Architect to Create a Custom Page in WordPress
You can also create a custom page using Thrive Architect. Thrive Architect is another popular drag-and-drop page builder for WordPress.
It comes with over 300 professionally-designed templates that are designed to help you get more conversions.
First, you need to install and activate the Thrive Architect plugin. For more details, see our step-by-step guide on how to install a WordPress plugin.
Upon activation, go to Pages » Add New in your WordPress admin dashboard to create a custom page. Then, click on the ‘Launch Thrive Architect’ button.
Next, you can choose whether to create a normal page or a pre-built landing page.
We recommend clicking on ‘Pre-built Landing Page’ as it gives you access to all the Thrive landing page templates. These templates are fully-customizable, so you can fine-tune them to suit your WordPress website.
When you find a set you like, simply click to select it.
In the following image, we’re selecting ‘Smart Landing Page Sets.’
On the next screen, you need to choose a specific template from the set.
Select a template by clicking on it and then hitting the ‘Apply Template’ button.
This will open the template in the Thrive Architect Editor. From here, you can easily customize the page template to match your blog, website, or online store.
As an example, you can change the ‘Heading’ by clicking on it and then typing in your own custom messaging.
You’ll now see all the customization options in the left-hand menu. Here, you can change the typography, font size, color, formatting, and more.
From the left-hand panel, you can also adjust other settings for your custom page, such as the layout, background style, borders, animations, and scroll behavior, just to name a few.
Similar to SeedProd’s blocks, Thrive Architect comes with many pre-built elements you can add to your custom page.
To add a new element to the page, click on the ‘Add Element (+)’ button on the right-hand side of the screen.
You can now choose from elements like images, buttons, lead generation forms, pricing tables, countdown timers, and more.
To add an element, simply drag it from the right-hand menu and drop it onto your page.
Again, you can edit any of the new elements you add to your page by clicking on them.
When you’re happy with how the page looks, click on the arrow (^) button next to the ‘Save Work’ button. Then, click the ‘Save and Return to Post Editor’ option.
You can then save the page as a draft, or publish it so it shows up on your WordPress website.
Once your custom page is published, you can visit your site to see it in action.
We hope this article helped you learn how to create a custom page in WordPress. You may also want to see our guide on how to increase your blog traffic, and our expert picks of the best contact form plugins for WordPress.
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.
Syed Balkhi
Hey WPBeginner readers,
Did you know you can win exciting prizes by commenting on WPBeginner?
Every month, our top blog commenters will win HUGE rewards, including premium WordPress plugin licenses and cash prizes.
You can get more details about the contest from here.
Start sharing your thoughts below to stand a chance to win!
Hemant Kuswah
Hiii, Thanks for the information.
I have a little problem/confusion. I had made the custom page as you described in the tutorial above. But i want to add custom php code to fetch data from other place and display on the custom page i just created.
There will be a dropdown on the custom page and on selecting a value it will display some data on the same page which is either coming from database or from some other website.
How can i do that ?
Any suggestion ?
Thanks
Jared
Hi – I was wondering how I can avoid including other plugins css and js files such as woocommerce and various others in my template.
Thanks,
J.
Valerio
What if the theme has a kind of wrapper base.php? I would like to create a new custom page template but I always get also what is in the main wrapper base.php. Did I make myself clear enough?
Dre
how about this one,
I want the sidebar on the very right and all the other content “full width” on the page. How can I do this?
When I choose “Full Width” in the WordPress-Site-Settings, the sidebar of course is gone and my content still isn’t full width.
you can see my page here:
thank you!
Yazhini
How to make FTP client connection?
WPBeginner Support
Hey Yazhini,
You will need to enter your website domain, FTP username and password. For detailed instructions please see our guide on How to use FTP to upload files to WordPress.
Admin
Yiani
Nothing shows up in the drop down in Page Attributes? I am using Storefront theme for Woocommerce. What is the solution? Is Storefront not allowing custom page templates? Any help is much appreciated. Thanks.
Henry
Very educative indeed, thanks alot. However, I have a rather unique situation and after reading your post felt I should ask. I have two lovely pages I long to add to my wordpress theme, but sadly they are static HTML pages with commenting, voting as well as sharing system. Is there a way I can get them into my existing wordpress theme and also get them to use the wordpress commenting, voting and sharing systems?
Ketan Chaudhari
Thank you for this tutorial.
Today, You give me a chance to learn something new in wordpress.
Natacha
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?
WPBeginner Support
Hi Natacha,
You can click on Appearance and then select a theme. See our guide on how to install a WordPress theme for detailed instructions.
Admin
Natacha
Thank you for the answer.
But, I cannot change the theme of my whole website. I just needed to create a blank page so I can create a forum.
Hero
Instead of reinventing the wheel, why not just use BuddyPress?
Tim
I just want to THANK YOU for posting this. I’ve been trying to get a static front page to work with my custom template and I just couldn’t find a straight and simple answer until stumbling upon this article. Much appreciated.
WPBeginner Support
Hi Tim,
You are welcome Don’t forget to follow us on Facebook for more WordPress tips and tutorials.
Admin
hamed ahmed
thanks, the google search console requires to save .html file to my wordpress website , but .html will not be appeared in the website , can any one help please because i want to register my website to search console
WPBeginner Support
Hi Hamed,
You can also verify by adding the meta tag or by using Yoast SEO plugin which allows you to add the meta tag from its settings page.
Admin
Sameer Kumar
how to remove sidebar Php?
KH
I don’t see the template option in the Page Attributes section of my wp page – is there something I need to do to see this?
Yasser
thanks alot.
It worked perfectly.
Luis
Thanks for the post! It was so difficult to find this simple answer in the wordpress codex. One suggestion, though. Please add to your post that when users create their ‘custom_page.php’ file to add a header tag, i.e. with a text title so they don’t get a white page on the first go. It’s just a quick way of making sure the page is really working. Again, thanks a lot for making this so easy!
ashkan 261
So cool thank a lot dear
AltisB
I m trying to embed some javascipt or html codes into the blank page… how should i do that? Because i now have the blank page but when i embed the embedded codes onto the editor it doesnt seems to work.
kray
How do you do this for Wordpress 4.7? No Template shows up when I attempt to create a page in 4.7.
Altisb
“Once you have added the code, save the file to your desktop as, custompaget1.php.”
My notepad save the file as .txt
How to you even save it as .php file???
WPBeginner Support
Hello,
Try using ‘Save as’ instead of save option from the file menu. When using save as write full name for your file. You can also rename the existing custompaget1.php.txt file to custompaget1.php
Admin
Ben
I’m truly a beginner and found the steps easy to follow. I created my new .php file following the instructions, pasting the page.php text at the end of my new .php file. I’m to the point where my new custom page template is available in the drop down when I create a new page. I select the new template for the new page, and when I make changes to the new page in the customizer (delete a text widget from the sidebar), the changes are applied to the other pages that have the default template selected as well, not to just my new page with the new custom template selected. Any ideas?
Marshall
I found this really helpful. However, I did have one problem. When I go to the new page
there is a 32px top margin on it which does not show on the other page.
Logan
Hello,
I have an issue with my WP pages. I have a website up and running and I recently needed to add a new page and a new menu button. I’ve made a new menu button and created a new page (default template) and published it. However, on the website, after clicking on the new button under which this new page should be, it’s only showing header and footer. Not my new page.
Could you be so kind and advise me on this? I’m a total WP beginner so building my own template page is out of the question and I was under the impression that simply adding a new page to my WP website should be only a few clicks away…
Thanks
WPBeginner Support
Hi Logan,
Please check out our guide on adding navigation menus in WordPress.
Admin
Anish
Hi! I did as you said.
I created a .php file with the same code snippet as given and uploaded it onto my /wp-content/themes folder. Now, when i go to the Page section on WordPress, there is no option for the Template choosing. What should i do ? Can you figure out where i might be going wrong ?
Leonardo
Hi. I don’t know any php and I need to creature a custom page for my website.
Is it possible to create an HTML page from scratch, include javascript to the page and put it into the .php file as described?
Thanks.
WPBeginner Support
Hi Leonardo,
You will still need to use PHP for WordPress template tags.
Admin
Mo
@DAN Are you sure that you including the header. Thats usually where WP will enqueue your style.css
Dan
Hi,
I’m trying to create a blank template to be used for a landing page. I succeded in creating the blank template, but now when I try to add content (using the WP editor or Visual Composer or even a CF7 contact form) no style is applied. Is there any way to tell the template to use the theme css style?
Thanks
Marco Milano
This isn’t a new post type but is a new template. They’re two different thing. In fact the you can call a template from a post whereas the custom post type has a personal space in admin panel.
Julie
I followed all the steps and they worked until I tried to select it in the “Page Attributes” part. The “CustomPageT1” is just not an option in the drop down menu!
What can I do so that Wordpress and or my theme can pick up that it’s a template?
Thanks in advance!
Julie
WPBeginner Support
Most often users make mistake while copy-pasting code snippets. Please make sure that your custom template file contains exactly the same code
<?php /* Template Name: CustomPageT1 */ ?>
Admin
Ubaid
I want to add a full width header image before entire content and sidebar. How can I do that?
Girija Tandel
Thank you so muc for this wonderfull tutorial.
This helps me a lot.
It works great.
Harish S Reddy
Thank You , it works Great !
WPBeginner Support
Hey Harish, glad you found it helpful. Don’t forget to follow us on Facebook for more WordPress tips and tutorials.
Admin
Charmy Dexter
It was like I’m reading 123. I hope a page template of a theme could be used in another theme.
Uchenna
please can you help me out. I have two themes. one for my desktop view and the other for mobile. i used any mobile switcher to get the mobile view working. I designed a static page for desktop theme and this is where my problem begins because once i set from “reading” to use static front page for the desktop theme, the mobile theme homepage stops displaying posts. please is there a way i can get this working? this is the site am talking about thanks in advnce
Matthew
Way easier than I thought this would be. Thank you!
Rahul Tiwari
Hi,
Its really helpful for me and very easy to understand.
Thanks
jass
thank you very much.This article really helps
Steven Denger
For a “beginner” this was not helpful. You did not explain the steps more in detail, like “go to your current theme folder” – how do I do this? And your FTP instructions were way to vague. If I was able to understand your instructions I wouldn’t have needed this wp-beginner in the first place as it is explained for those that have mor tech experience.
These tutorals were not at all helpful and are just targeted for the more tech viewers.
NO HELP HERE AT ALL!!
WPBeginner Support
Hi Steven,
We are sorry that you didn’t find this article helpful. We will try to explain in comments.
To connect to your theme folder you will need an FTP client. These are special software which allow you to connect to your webserver and upload, delete, and manage your files directly.
When you sign up with a WordPress hosting provider, they send you an email with your FTP login credentials. If you did not receive this email then please contact your hosting provider via chat or email and then will send them to you right away.
However, if using FTP seems a bit too difficult, then you can also use File Manager. It is a web based application available under your web hosting account. Login to your web hosting account and look for File Manager.
Let us know if you need more help
We will try to improve and make our articles even more beginner friendly in the future.
Admin
Niki
Many thank you for simple and informative article helped me to start
Chibuike Mba
Thank you very much, this your article about custom page have really pointed me in the right direction for I needed to override theme page in my plugin for some custom post types.
Thank you once again.
WPBeginner Support
We are glad you found it helpful:) Don’t forget to follow us on Twitter for more WordPress tips and tutorials.
Admin
Wayne from Keys English
Hello,
What can I do if I see the successful transfer of the custompageT1 to my FireFTP client, but when I go into WP admin – create a new page – scroll down to template, the custompageT1 is not in the drop down list to select?
Thanks
Wayne
zamaan
Excellent, very useful. Thank you.
but u fogot to tell where i want to add my custom php code in the template file
Jaczkowski
I learnt something new. Thanks alot
Janet Fuller
This is really extra ordinary. Generally, I do add a page and then create that. But today, I have known something new.
nevenx
Hi,
is it possible to integrate another script to wp (e.g. faucetbox script) on this way?
WPBeginner Support
You can, but it would be better to create a plugin for that.
Admin
San
Great article. Helps to ease my confusion
Tak
thanks for the very concise tutorial with simple examples. it was super easy to follow!
Radhakrishnan
Dear sir,
I did what you say. but in my page edit screetn there no template comming in attribute. what i can do sir?
levan
many thanks to you my dear its very helpful
Gabriel
This is a great tutorial. Very simple and easy to follow. Thank you!
Waleed Barakat
Thanks for the tutorial! actually i have a games WordPress template and every time i try to create a page treat it as a game and not show the page content as usual, but i think everything will be okay after reading and applying this tutorial on my website:
Thanks again