Joomla Mafia -> Guides -> How To -> Custom error (404) pages
Close Panel

Mafia Icons

Created with Mafia Icons
AddThis
Club Extensions
iJoomla

iwebtools

Alexa Certified Site Stats for www.joomlamafia.com

DownDoggy.com

Custom error (404) pages PDF Print E-mail
Written by DrDigital   
Monday, 23 June 2008 05:06

Custom error pages

Joomla! uses the templates/system/error.php file to handle several HTTP Status errors, including "403 Forbidden", "404 Not Found", and "500 Internal Server" Errors. You can style the error results, if desired.

It is important to understand that the error.php is an independent file from Joomla!. Plugins do not run on the file. You cannot include modules or use <jdoc:include> statements.

Overriding the System Error Results

To override the system error results, copy the templates/system/error.php file into your templates/<template-name> directory.
If it finds one, Joomla! will use the error.php file from the current template, in place of the system file.
You can format the page, as desired, to match your template.

Overriding the System Styling

If you want to change the styling, copy the templates/system/css/error.css file into your templates/<template-name>/css directory.

Next, update the your templates/<template-name>/error.php file to reference the new location of the stylesheet by changing this line, accordingly:

<link rel="stylesheet" href="<?php echo $this->baseurl; ?>/templates/system/css/error.css" type="text/css" />

Then, simply change the error.css, as desired, for your styling requirements.

Customizing Error Messages

To create the custom error message, dependent upon the specific error code, you'll want to add the following code somewhere in the error.php document to create the custom message.

Here is an example of how display a 404 error:

<?php if ($this->error->code = '404') { ?>
<div id="errorboxheader">Page not found</div>
<div id="errorboxbody"><p>Sorry! That page cannot be found.</p>
</div>
</div>
<?php } ?>

HTTP status code

When a request is made for a page on your site, the server returns an HTTP status code in response to the request. Joomla! returns a '200 - the server successfully returned the page' for error pages. This is problematic for those working with Google Webmaster Services and trying to get a sitemap resolved.

If you want Joomla! to return a status code for the error, you can do so by adding logic before the DOCTYPE line, as follows:

<?php 
if ($this->error->code = '404') {
header("HTTP/1.0 404 Not Found");
} ?>
Trackback(0)
Comments (1)Add Comment
Simple. Effective
written by Joshua Harrington, July 03, 2008
Thanks for this article. It's simple to do and makes quite a difference on any website.
report abuse
vote down
vote up
Votes: +0

Write comment
quote
bold
italicize
underline
strike
url
image
quote
quote
smile
wink
laugh
grin
angry
sad
shocked
cool
tongue
kiss
cry
smaller | bigger

security code
Write the displayed characters


busy
Last Updated on Sunday, 06 July 2008 11:45
 
Page copy protected against web site content infringement by Copyscape
Copyright © 2009 . Joomla Mafia 1.5.x Tutorials Tips Tricks & more.
Club Templates

Joomla Mafia Supporter

Joomla Mafia Supporter

Joomla Mafia Supporter

JoomlaMafia Supporter

JoomlaMafia Supporter

JoomlaMafia Supporter

Template Plazza

JoomlaMafia Supporter

Recommended Web Hosting

Site Ground

Host Gator


View my page on PickensPlan

Please Take The Poll

New Site
 
Join Our Newsletter