Set template for pages with a plugin - wordpress

Im looking for a plugin which lets me choose templates for my pages.
Currently, what im doing is i manually open up the page for which i want to set a template and choose one for this single page. I then have to do this again for all the other pages one by one.
Is there a plugin which lists all my pages and lets me easily choose a template for these pages?

there is not such plugin because this feature is integrated in the wordpress core, http://img1.uploadscreenshot.com/images/orig/7/20222113055-orig.png

Related

What is the best way to achieve repeatable content with WordPress and ACF?

I am building a website for a local builder and he asked me to create a 'Project' functionality where he could add a Project, fill in the information and add photos and then have a page called 'Projects' where the new project automatically goes on to the page which then links to a page about the project in more detail.
Using Advanced Custom Fields, how would I create something like this?
Do I use the Page system or do I create a custom ACF options page just for projects? Each Project will need its own page and the project title and image must be accessible from the page footer as 6 of the latest projects will be shown there.
Any help would be appreciated!
I would probably not use Advanced Custom Fields for the projects but a custom post type called "Projects"
Register a Post Type
https://developer.wordpress.org/reference/functions/register_post_type/
Or Using a Plugin
https://wordpress.org/plugins/custom-post-type-ui/
This will give you a new Projects section just like pages or posts and I would use Advanced Custom Fields to add fields to the projects so you can add additional information on the project such as photos and any other fields a project might require.
Custom Post Type archive pages are accessible via www.yoursite.com/projects which will list all of the projects using the default template one of
single.php
archive.php
depending on your theme then each single project will have it's own page too at www.yoursite.com/projects/project-name these will probably use one of
single.php
singular.php
index.php
https://developer.wordpress.org/themes/basics/template-hierarchy/
You can create custom templates for both of these by creating files named
archive-projects.php
single-projects.php
The footer would be a different issue you'd need to loop through your projects using one of
get_pages();
get_posts();
WP_Query;
https://codex.wordpress.org/Function_Reference/get_pages
https://codex.wordpress.org/Function_Reference/get_posts
https://codex.wordpress.org/Class_Reference/WP_Query

Why is a theme needed if page builder is there in WordPress?

I am new into the arena of WordPress. I started learning about how to create website using WordPress. I am wondering if a page layout can be fully designed and customized by using a page builder, why i need to use a theme. Isn't theme is used to define how my contents are going to be shown in pages ?
A theme is actually a collection of files that control the way the site is displayed and to some degree how it behaves. While page builders typically allow you control of some aspects of the visual interface, you cannot have a Wordpress site without an active theme.

Support for multiple blog layouts in the same wordpress site

Is there a way to add support for multiple blog page layouts for a wordpress site. I would like to be able to somehow choose
the layout I want for the post as I create/edit the post. I know for the pages scenario, you can create page templates and
just select the one you want from a dropdown. Is there a way to achieve this same functionality for posts and if so, how?
The current site I am working on is using the klasik framework and the themeforest consult-ts template. I do not know if that makes a difference.
Wordpress provides a template hierarchy which gives you the flexibility to create custom layouts for posts, pages, archives, etc. To create a custom layout for a specific blog post, you would name the template single-{post-type}-{slug}.php
You can find out more about the template hierarchy here

Wordpress child theme or plugin?

I have a client that wants to have a custom form added as a page on his Wordpress site. His site is using the "Genesis" framework and is already using a child theme of "Manhattan". I can create the form as a page template from within the Manhattan directory but if they ever update, the changes will be lost. What should I do?
I suggest you make it a plugin with a shortcode that way you can use it on every page you want. And even posts (which don't use templates)
You also could take a look at form plugins, which are fine if you don't need advanced forms.
As long as you place your template inside the Manhattan directory -- assuming you don't place that directory inside of the Genesis directory -- you won't have a problem with over-writing on update of the Genesis theme. Child themes do not have to be inside the parent theme's directory, indeed, they sd not -- they sd be in the /themes directory. See, http://codex.wordpress.org/Child_Themes
it is a very complex form?
If you add a custom template to the existing theme you may loose the changes when the theme is updated.
If is a simple form, I'd use a plugin like contact form 7, or caldera forms.
If not (or you don't wan't to use a wp.org plugin), you can create your own plugin and register a shortcode, you can write all the form functionality at the plugin and use the shortcode in the WP editor.
This way you won't have any risks of loosing features due to a theme upgrade

Is it standard practice for plugins to add pages to wordpress using templates or shortcodes?

I want my plugin to add new pages to the website and I wanted to know which is the best way for doing that. I've seen plugins which add their pages using shortcodes and other plugins which include their own page templates.
I was wondering which is the better way of adding public pages (NOT AN ADMIN PAGE) to Wordpress?
both ways you described are valid . you can do both (by the way, shortcodes are just a different way to INCLUDE the template inside a post or page)
you did not specified what this template should do - but What I would do is include the template needed in the plugin folder structure, and then call it when needed , with $plugin_directory = plugin_basename(__FILE__);

Resources