Wordpress Templates aren't showing up on my Page Options - wordpress

I'm working on my first WordPress project. It won't be a blog but a CMS to quickly edit content and pages on the site.
I've got the header and footer exactly how I want it by editing them in the Appearance -> Editor menu. Under this menu I see quite a few templates that I could use (screen shot http://i.stack.imgur.com/P7IyY.png), some of which I don't even think I'll need or know where they came from. However when I edit my pages and go to the Page Attributes section there is only an option for 1 template (screenshot http://i.stack.imgur.com/UblzD.png). If I select Default Template as my template for the page, only the header and footer seem to load.
I am pretty new to WordPress. Am I suppose to 'activate' these templates somewhere? I only plan to use a handful of them (index pages, contact pages with a sidebar). What am I missing?
Thank you!

You should take a look at the information posted in the WordPress Codex on template files and the like. This image is particularly helpful in getting an understanding for when certain files are used by the WordPress engine to render pages WordPress Template Files Diagram.
You'll find the rest of the information relating to that diagram on this page.

I experienced this issue when using a child theme. I added a new template file to the child theme but the "templates" dropdown did not show on the page options section of any of my pages. I checked and double-checked the formatting of the template file and that was not the issue.
It turns out that my styles.css document in the child theme was not formatted properly and was missing the "template" attribute that designates the parent theme being extended with the child theme. I update the child theme css document to reference the parent template and voila! The template dropdown showed as expected.

Related

WooCommerce My Account Page from page.php?

I created my-account.php inside woocommece folder in my custom theme.
But, when I want to display what is inside my-account.php file, My Account page take template from page.php. What a drag coherent content...
My custom theme support WC, in settings all is (at least it should) adjusted properly.
How to fix this?
Thanks.

Creating page templates in Wordpress 5.0

I wondered why in page attributes there is no templates dropdown anymore?
Is there another way how templates should be made now?
Do i need to make page-{slug}.php now or is there another way, because it was easy to use templates for multilingual pages, just add template once and select it on every page language. Now i would need to make a .php file for each language because of the slug.
There is no templates dropdown
Previously there was
The page attributes dropdown is still there, though slightly hidden.
Look for the top right cog icon: Settings => Document => Page Attributes.
Ok i found a problem. Theme was broken because my style.css file was deleted out of nowhere. That was the problem. When i added style.css back, then all templates showed.

how do nopCommerce list pages in the footer from a theme

I downloaded a theme off the NopCommerce site. The footer list some basic pages but there are some missing. For example: the "About us page" I can see from the admin end that these are pages that you can change the text for but the new theme just doesnt have them.
Is there a way to turn on and off page visibility or do i have to edit the root layouts in the source code to display links for these pages?
If your theme doesn't include a link to the page, there's a good chance you'll have to add to the HTML yourself. Fortunately, its not difficult at all.
This is where the About Us link is in the Default template
\Views\Common\Footer.cshtml (Line 19)
<li>#T("AboutUs")</li>
Paste that line into your downloaded theme's footer file to get the About Us link to show up. If your theme follows a similar file structure as NopCommerce's Default Template, the file you'll need to edit should be at
\Themes{your-downloaded-theme-name}\Views\Common\Footer.cshtml

Magento child theme overriden by custom theme on categories pages

I'm having trouble adapting a Magento Theme.
I'm using a child theme of a custom theme in order to be able to update this theme in the future. It has worked fine in home page and product pages linked from this page, but when I enter a category page and from there go to a product page, my child theme is not applied anymore (custom theme instead).
I tried a lot of things but oddly, no changes were visible. I even commented a css I was importing from the custom css style field in the admin, and it was still being applied. I flushed cache of course, but no results.
I must say that originally I had a folder with css inside the main theme default folder (magma/default/child_theme/css/style.css) and it was linked in the field as mentioned above. Then I made a copy of it and put it in magma/child_theme/css/style.css, which is the way a child theme must be, as I understand. I changed a color in this new css and no changes made. The first css is still being called. I don't know from where, since I commented the import, as I said.
Any idea where to look into?
Thanks!
You mentioned it's specifically categories and their products. I would check Catalog > Manage Categories then, specifically the Custom Design tab on whatever category/categories are giving you trouble.

What is the difference between a theme and a template?

I am trying to migrate my site to Drupal and I am confused about themes and templates. The look and feel of the pages in my current site are completely controlled by template files and CSS. How does it work in Drupal?
In drupal, a theme handles the appearance of the site and a template handles how your content is rendered.
Think of it like this: the template is used to render the content, then the theme is applied on that content.
Edit: So, your css files live with the theme in drupal, and have nothing to do with the templates.
In Drupal, a "theme" is just a special type of plugin that bundles together any number of templates (to control how a given piece of data gets rendered to HTML), CSS, JS files, images, and so on.
So, there is a single "template" for your oveevral page markup, a single "template" for how a sidebar block is rendered as HTML, and so on. All of them, bundled together and named, are referred to as a theme.
Look at it this way: It's possible to create a theme that has no templates. Such a theme would have CSS files that override drupal's default CSS files. Using such a theme would create a website that looks almost exactly like Drupal's default site, except it would have different colors, fonts and so on.
But if you want to change the positions of items on the page, what kinds of items are on the page and so on, you have to override the default templates by adding some of your own to your theme. These new templates let you alter what information Drupal displays and what kind of HTML Drupal will use to display it.
For example, say I want to clone StackOverflow, but I want to do it with Drupal. First thing I would do is create a new content type (call it a "question") that is just like a story but has extra fields to track voting and so on. Drupal's default templates won't know about these extra fields, so they won't display them.
So, what I do is I go into my theme and I add a new node.tpl.php file. This new template is just like the standard one, except I can add code that says "if this node is of type 'question', insert the voting gadget to the left of the body."
Does this help?
A theme is made up of a collection of template files. block.tpl.php, node.tpl.php, page.tpl.php are all template files which when combined with your CSS, JS and images produces a theme. In addition a themes can be inherited. A theme can be created with just CSS and no additional template files by inheriting from an existing theme, in which case the template files from the parent theme are used.
Another way to look at it is a theme is what you see and the template files are responsible for generating the markup.
I hope this makes it a little bit clearer.
I'm confused...
The first answer says that templates and themes have nothing to do with each other, while the second one says themes are just collections of answers.
Which one is right?
Drupal is having a template based theming system. You can define your own regions in page and can arrange the content according to that . There are some default template file such as page.tpl ,block.tpl ,node.tpl which are displaying different kind of contents .
You can write your own template file as needed for eg if you need to alter the display of user registration form or login page you can create a tpl file for that and have to redirect the data to that tpl file. You can add the css or js to these templates using drupals apis. This redirection has to be done in the themes template.php file
A theme is comprised of css, js, images, and template files. Each theme may include multiple template files.
Additionally, themes can be inherited, and a subtheme's template files could override the template files of its parent theme.

Resources