Back to top

Autore Topic: [RISOLTO] - Come creo una pagina per l'errore 404 su Joomla 3.1?  (Letto 5394 volte)

Offline Snt®hw4u®

  • Appassionato
  • ***
  • Post: 350
  • Sesso: Maschio
    • Mostra profilo
Come da titolo:

Come creo una pagina per l'errore 404 su Joomla 3.1?

uso un template protostar.

Saluti
« Ultima modifica: 08 Mag 2013, 13:20:12 da Snt®hw4u® »

adottauncane

  • Visitatore
Re:Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #1 il: 04 Mag 2013, 02:09:51 »
Ciao Snt®hw4u®,
la pagina di errore c'è in quel template è error.php
Se la vuoi personalizzare crea un articolo e inserisci solo i moduli essenziali (tipo il menù principale) e metti il link alla home nel testo dell'articolo (ad esempio).
Crea una voce di menù temporanea e linka l'articolo.
Richiami l'articolo in frontend e copi il codice sorgente, lo incolli nella pagina error.php al posto di quello che trovi, e hai la pagina personalizzata come vuoi.
Poi elimina la voce menù.

Offline Snt®hw4u®

  • Appassionato
  • ***
  • Post: 350
  • Sesso: Maschio
    • Mostra profilo
Re:Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #2 il: 06 Mag 2013, 16:42:09 »
Non trovo la pagina error.php
Il template base è il protosta e io l'ho "copiato" con un altro nome

Offline Snt®hw4u®

  • Appassionato
  • ***
  • Post: 350
  • Sesso: Maschio
    • Mostra profilo
Re:Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #3 il: 06 Mag 2013, 16:45:43 »
Ho trovato il file error.php dentro protostar e l'ho copiato nel mio template.
 
Ma in che punto devo modificare?
 

adottauncane

  • Visitatore
Re:Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #4 il: 06 Mag 2013, 20:52:25 »
Richiami l'articolo in frontend e copi il codice sorgente, lo incolli nella pagina error.php al posto di quello che trovi, e hai la pagina personalizzata come vuoi.


Offline Snt®hw4u®

  • Appassionato
  • ***
  • Post: 350
  • Sesso: Maschio
    • Mostra profilo
Re:Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #5 il: 08 Mag 2013, 13:05:09 »
Ciao e intanto grazie per l'aiuto!

il codice della pagina di errore è:
Codice: [Seleziona]
<?php
/**
 * @package     Joomla.Administrator
 * @subpackage  Templates.protostar
 *
 * @copyright   Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
 * @license     GNU General Public License version 2 or later; see LICENSE.txt
 */

defined('_JEXEC') or die;

// Getting params from template
$params JFactory::getApplication()->getTemplate(true)->params;

$app JFactory::getApplication();
$doc JFactory::getDocument();
$this->language $doc->language;
$this->direction $doc->direction;

// Detecting Active Variables
$option   $app->input->getCmd('option''');
$view     $app->input->getCmd('view''');
$layout   $app->input->getCmd('layout''');
$task     $app->input->getCmd('task''');
$itemid   $app->input->getCmd('Itemid''');
$sitename $app->getCfg('sitename');

if(
$task == "edit" || $layout == "form" )
{
  
$fullWidth 1;
}
else
{
  
$fullWidth 0;
}

// Add JavaScript Frameworks
JHtml::_('bootstrap.framework');

// Add current user information
$user JFactory::getUser();


// Logo file
if ($params->get('logoFile'))
{
  
$logo JURI::root() . $params->get('logoFile');
}
else
{
  
$logo $this->baseurl "/templates/" $this->template "/images/logo.png";
}
?>

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="<?php echo $this->language?>" lang="<?php echo $this->language?>" dir="<?php echo $this->direction?>">
<head>
  <title><?php echo $this->title?> <?php echo $this->error->getMessage();?></title>
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  <meta name="language" content="<?php echo $this->language?>" />
  <link rel="stylesheet" href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template?>/css/template.css" type="text/css" />

  <?php
    $debug 
JFactory::getConfig()->get('debug_lang');
    if ((
defined('JDEBUG') && JDEBUG) || $debug)
    {
  
?>

    <link rel="stylesheet" href="<?php echo $this->baseurl ?>/media/cms/css/debug.css" type="text/css" />
  <?php
    
}
  
?>

  <?php
  
// If Right-to-Left
  
if ($this->direction == 'rtl')
  {
  
?>

    <link rel="stylesheet" href="<?php echo $this->baseurl ?>/media/jui/css/bootstrap-rtl.css" type="text/css" />
  <?php
  
}
  
// Use of Google Font
  
if ($params->get('googleFont'))
  {
  
?>

    <link href='http://fonts.googleapis.com/css?family=<?php echo $params->get('googleFontName');?>' rel='stylesheet' type='text/css'>
  <?php
  
}
  
?>

  <link href="<?php echo $this->baseurl ?>/templates/<?php echo $this->template?>/favicon.ico" rel="shortcut icon" type="image/vnd.microsoft.icon" />
  <?php
  
// Template color
  
if ($params->get('templateColor'))
  {
  
?>

  <style type="text/css">
    body.site
    {
      border-top: 3px solid <?php echo $params->get('templateColor');?>;
      background-color: <?php echo $params->get('templateBackgroundColor');?>
    }
    a
    {
      color: <?php echo $params->get('templateColor');?>;
    }
    .navbar-inner, .nav-list > .active > a, .nav-list > .active > a:hover, .dropdown-menu li > a:hover, .dropdown-menu .active > a, .dropdown-menu .active > a:hover, .nav-pills > .active > a, .nav-pills > .active > a:hover
    {
      background: <?php echo $params->get('templateColor');?>;
    }
    .navbar-inner
    {
      -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, .25), inset 0 -1px 0 rgba(0, 0, 0, .1), inset 0 30px 10px rgba(0, 0, 0, .2);
      -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, .25), inset 0 -1px 0 rgba(0, 0, 0, .1), inset 0 30px 10px rgba(0, 0, 0, .2);
      box-shadow: 0 1px 3px rgba(0, 0, 0, .25), inset 0 -1px 0 rgba(0, 0, 0, .1), inset 0 30px 10px rgba(0, 0, 0, .2);
    }
  </style>
  <?php
  
}
  
?>

  <!--[if lt IE 9]>
    <script src="<?php echo $this->baseurl ?>/media/jui/js/html5.js"></script>
  <![endif]-->
</head>

<body class="site <?php echo $option
  
' view-' $view
  
. ($layout ' layout-' $layout ' no-layout')
  . (
$task ' task-' $task ' no-task')
  . (
$itemid ' itemid-' $itemid '')
  . (
$params->get('fluidContainer') ? ' fluid' '');
?>
">

  <!-- Body -->
  <div class="body">
    <div class="container<?php echo ($params->get('fluidContainer') ? '-fluid' '');?>">
      <!-- Header -->
      <div class="header">
        <div class="header-inner clearfix">
          <a class="brand pull-left" href="<?php echo $this->baseurl?>">
            <img src="<?php echo $logo;?>" alt="<?php echo $sitename?>" />
          </a>
          <div class="header-search pull-right">
            <?php
            
// Display position-0 modules
            
$this->searchmodules JModuleHelper::getModules('position-0');
            foreach (
$this->searchmodules as $searchmodule)
            {
              
$output JModuleHelper::renderModule($searchmodule, array('style' => 'none'));
              
$params = new JRegistry;
              
$params->loadString($searchmodule->params);
              echo 
$output;
            }
            
?>

          </div>
        </div>
      </div>
      <div class="navigation">
        <?php
        
// Display position-1 modules
        
$this->navmodules JModuleHelper::getModules('position-1');
        foreach (
$this->navmodules as $navmodule)
        {
          
$output JModuleHelper::renderModule($navmodule, array('style' => 'none'));
          
$params = new JRegistry;
          
$params->loadString($navmodule->params);
          echo 
$output;
        }
        
?>

      </div>
      <!-- Banner -->
      <div class="banner">
        <jdoc:include type="modules" name="banner" style="xhtml" />
      </div>
      <div class="row-fluid">
        <div id="content" class="span12">
          <!-- Begin Content -->
          <h1 class="page-header"><?php echo JText::_('JERROR_LAYOUT_PAGE_NOT_FOUND'); ?></h1>
          <div class="well">
            <div class="row-fluid">
              <div class="span6">
                <p><strong><?php echo JText::_('JERROR_LAYOUT_ERROR_HAS_OCCURRED_WHILE_PROCESSING_YOUR_REQUEST'); ?></strong></p>
                <p><?php echo JText::_('JERROR_LAYOUT_NOT_ABLE_TO_VISIT'); ?></p>
                <ul>
                  <li><?php echo JText::_('JERROR_LAYOUT_AN_OUT_OF_DATE_BOOKMARK_FAVOURITE'); ?></li>
                  <li><?php echo JText::_('JERROR_LAYOUT_MIS_TYPED_ADDRESS'); ?></li>
                  <li><?php echo JText::_('JERROR_LAYOUT_SEARCH_ENGINE_OUT_OF_DATE_LISTING'); ?></li>
                  <li><?php echo JText::_('JERROR_LAYOUT_YOU_HAVE_NO_ACCESS_TO_THIS_PAGE'); ?></li>
                </ul>
              </div>
              <div class="span6">
                <?php if (JModuleHelper::getModule('search')) : ?>
                  <p><strong><?php echo JText::_('JERROR_LAYOUT_SEARCH'); ?></strong></p>
                  <p><?php echo JText::_('JERROR_LAYOUT_SEARCH_PAGE'); ?></p>
                  <?php
                    $module 
JModuleHelper::getModule('search');
                    echo 
JModuleHelper::renderModule($module);
                  
?>

                <?php endif; ?>
                <p><?php echo JText::_('JERROR_LAYOUT_GO_TO_THE_HOME_PAGE'); ?></p>
                <p><a href="<?php echo $this->baseurl?>/index.php" class="btn"><i class="icon-home"></i> <?php echo JText::_('JERROR_LAYOUT_HOME_PAGE'); ?></a></p>
              </div>
            </div>
            <hr />
            <p><?php echo JText::_('JERROR_LAYOUT_PLEASE_CONTACT_THE_SYSTEM_ADMINISTRATOR'); ?></p>
            <blockquote>
              <span class="label label-inverse"><?php echo $this->error->getCode(); ?></span> <?php echo $this->error->getMessage();?>
            </blockquote>
          </div>
          <!-- End Content -->
        </div>
      </div>
    </div>
  </div>
  <!-- Footer -->
  <div class="footer">
    <div class="container<?php echo ($params->get('fluidContainer') ? '-fluid' '');?>">
      <hr />
      <jdoc:include type="modules" name="footer" style="none" />
      <p class="pull-right"><a href="#top" id="back-top"><?php echo JText::_('TPL_PROTOSTAR_BACKTOTOP'); ?></a></p>
      <p>&copy; <?php echo $sitename?> <?php echo date('Y');?></p>
    </div>
  </div>
  <jdoc:include type="modules" name="debug" style="none" />
</body>
</html>

e la pagina che voglio visualizzare è questa..

http://www.pizzeriabemitempi.it/menu-non-trovato.html

Ciao e ancora Grazie

Offline Snt®hw4u®

  • Appassionato
  • ***
  • Post: 350
  • Sesso: Maschio
    • Mostra profilo
Re:Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #6 il: 08 Mag 2013, 13:19:52 »
Risolto:

Ho cercato su internet e ho trovato la soluzione:

Codice: [Seleziona]

 Ora apri il file error.php e cerca le parole defined('_JEXEC') or die; 6. Copia il seguente codice subito dopo le parole defined('_JEXEC') or die;
Aggiunta:

Codice: [Seleziona]

if (($this->error->getCode()) == '404') {
 header('Location: index.php?option=com_content&view=article&id=7');
 exit; }
Al posto di:
index.php?option=com_content&view=article&id=7
Ho inserito il riferimento del mio articolo!

Ciao e Grazie!
« Ultima modifica: 08 Mag 2013, 13:21:19 da adottauncane »

adottauncane

  • Visitatore
Re:[RISOLTO] - Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #7 il: 08 Mag 2013, 13:21:00 »
Bene. Levo il riferimento perché ad una risorsa esterna.

Offline Snt®hw4u®

  • Appassionato
  • ***
  • Post: 350
  • Sesso: Maschio
    • Mostra profilo
Re:[RISOLTO] - Come creo una pagina per l'errore 404 su Joomla 3.1?
« Risposta #8 il: 08 Mag 2013, 13:23:14 »
Ok! Ciao e ancora Grazie per l'aiuto!

 



Web Design Bolzano Kreatif