Solved

How to specify a home page layout and an article page layout in joomla?

Posted on 2011-02-27
8
873 Views
Last Modified: 2012-05-11
I have two layouts, one for the home page and one for article pages.  I have a custom template built and saved as index.php in joomla for the home page, but how do I specify another layout for article pages?
0
Comment
Question by:EMB01
  • 3
  • 3
  • 2
8 Comments
 
LVL 12

Assisted Solution

by:Panagiotis S
Panagiotis S earned 225 total points
ID: 34992845
1. Create homepage conditionals in Joomla!, or create the ability to target the default menu item.

Sometimes it's necessary to specify styling or some functionality that is specific to the front page. Joomla! provides a few different ways to do this. One of them is to place a check for the front page in the template code.


1.// Detecting Home
2.$menu = & JSite::getMenu();
3.if ($menu->getActive() == $menu->getDefault()) {
4.$siteHome = 1;
5.}else{
6.$siteHome = 0;
7.}

In this snippet, we're grabbing the menu in the $menu variable, then checking if this menu item is the active menu item and if it's the default. We're then setting a variable $siteHome with a boolean value (1 or 0) i.e. whether the variable returns a true or false value.

Now you can place a simple conditional around any html element in the page:

1.<?php if($siteHome) { ?>
2.<div id="home-banner">
3.This content will only show on the homepage!
4.</div>
5.<?php } ?>


from joomla magazine
0
 
LVL 13

Accepted Solution

by:
joomla_php earned 275 total points
ID: 34993021
It should be the same in 16 as it is in 15, if not report back here

install both templates, each having a distinct name

Under extensions, templates,
click template1, assign it to the home page, save
click template2, assign it to all other pages, save
0
 
LVL 14

Author Comment

by:EMB01
ID: 34993211
Okay, so I have two options:  1.  add conditionals to the template.  2.  create another template all together.

One small, additional question:  How do I echo the meta description in my template?  For instance:

<h1><?php echo_joomla_title(); ?></h1>
<h2><?php echo_joomla_meta_description(); ?></h2>
0
Courses: Start Training Online With Pros, Today

Brush up on the basics or master the advanced techniques required to earn essential industry certifications, with Courses. Enroll in a course and start learning today. Training topics range from Android App Dev to the Xen Virtualization Platform.

 
LVL 13

Expert Comment

by:joomla_php
ID: 34993276
The meta description is output via the use of

<jdoc:include type="head" />
0
 
LVL 14

Author Comment

by:EMB01
ID: 34993301
That sounds like it outputs more than just the description.  Is there anyway to get just the description?  Or, is it impossible?
0
 
LVL 13

Expert Comment

by:joomla_php
ID: 34993507
echo ($this->getMetaData('keywords'));
echo ($this->getMetaData('description'));
0
 
LVL 12

Assisted Solution

by:Panagiotis S
Panagiotis S earned 225 total points
ID: 34994610
the easiest method is the one with the simple conditions.

The only need is to have some additional css classes for the home page

0
 
LVL 14

Author Closing Comment

by:EMB01
ID: 34997022
I think I would like to create two different templates, rather than using conditionals.  Thanks for the extra info.
0

Featured Post

Gigs: Get Your Project Delivered by an Expert

Select from freelancers specializing in everything from database administration to programming, who have proven themselves as experts in their field. Hire the best, collaborate easily, pay securely and get projects done right.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Title # Comments Views Activity
joomla t3 framework 2 259
CSS z-index quandary 2 87
Joomla 2.5 and .htaccess in LAMP environment 1 70
Joomla main HTML page 4 89
Welcome Friends, This is the tutorial for how to create new simple module in joomla 1.5. In the module has two important files. One is XML file and another file is PHP controller file. First you need to create the XML file. (CODE) …
What you will need: Any version of Photoshop or similar product (examples in Photoshop) Internet Access FTP Access to your joomla install or ability to upload images within joomla administrator backend Create Image: Lets start off with cre…
This tutorial gives a high-level tour of the interface of Marketo (a marketing automation tool to help businesses track and engage prospective customers and drive them to purchase). You will see the main areas including Marketing Activities, Design …
Microsoft Active Directory, the widely used IT infrastructure, is known for its high risk of credential theft. The best way to test your Active Directory’s vulnerabilities to pass-the-ticket, pass-the-hash, privilege escalation, and malware attacks …

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question