Frontend Nouvel Article : aucun message pour dire que l'alias existe déjà

Réduire
Ce sujet est fermé.
X
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Frontend Nouvel Article : aucun message pour dire que l'alias existe déjà

    Bonjour,

    Je m'aperçois que sur la page 'Nouvel Article' du frontend de mon site (edit.php dans joomla), si je propose un article avec un titre déjà existant, l'article n'est pas publié mais rien ne m'est indiqué... J'ai seulement un retour du formulaire. C'est problématique, il faudrait que l'utilisateur sache pourquoi il ne peut pas poster son article.

    En backend, je n'ai pas ce souci, un message s'affiche pour me prévenir :
    Erreur
    L'enregistrement a échoué avec l'erreur suivante : Un autre article de cette catégorie possède le même alias
    Sauriez-vous m'aider ? Rencontrez-vous ce même problème ?

    Merci

  • #2
    Re : Frontend Nouvel Article : aucun message pour dire que l'alias existe déjà

    Voici le fichier edit.php que j'utilise :

    <?php
    /**
    * @package Joomla.Site
    * @subpackage com_content
    *
    * @copyright Copyright (C) 2005 - 2014 Open Source Matters, Inc. All rights reserved.
    * @license GNU General Public License version 2 or later; see LICENSE.txt
    */

    defined('_JEXEC') or die;

    JHtml::_('behavior.tabstate');
    JHtml::_('behavior.keepalive');
    JHtml::_('behavior.calendar');
    JHtml::_('behavior.formvalidation');
    JHtml::_('formbehavior.chosen', 'select');
    JHtml::_('behavior.modal', 'a.modal_jform_contenthistory');


    // Create shortcut to parameters.
    $params = $this->state->get('params');
    //$images = json_decode($this->item->images);
    //$urls = json_decode($this->item->urls);

    // This checks if the editor config options have ever been saved. If they haven't they will fall back to the original settings.
    $editoroptions = isset($params->show_publishing_options);
    if (!$editoroptions)
    {
    $params->show_urls_images_frontend = '0';
    }
    ?>

    <script type="text/javascript">
    Joomla.submitbutton = function(task)
    {
    if (task == 'article.cancel' || document.formvalidator.isValid(document.getElement ById('adminForm')))
    {
    <?php echo $this->form->getField('articletext')->save(); ?>
    Joomla.submitform(task);
    }
    }
    </script>
    <style type="text/css">
    .width {
    width: 390px;
    }
    .arial {
    font-family: Arial, Helvetica, sans-serif;
    text-transforme:uppercase;
    }
    </style>

    <div class="edit item-page<?php echo $this->pageclass_sfx; ?>">
    <?php if ($params->get('show_page_heading', 1)) : ?>
    <div class="page-header">
    <h1>
    <?php echo $this->escape($params->get('page_heading')); ?>
    </h1>
    </div>
    <?php endif; ?>

    <form action="<?php echo JRoute::_('index.php?option=com_content&a_id='.(in t) $this->item->id); ?>" method="post" name="adminForm" id="adminForm" class="form-validate form-vertical">
    <div class="btn-toolbar">
    <div class="btn-group">
    <button type="button" class="btn btn-primary" onclick="Joomla.submitbutton('article.save')">
    <span class="icon-ok"></span>&#160;<?php echo JText::_('JSAVE') ?>
    </button>
    </div>
    <div class="btn-group">
    <button type="button" class="btn" onclick="Joomla.submitbutton('article.cancel')">
    <span class="icon-cancel"></span>&#160;<?php echo JText::_('JCANCEL') ?>
    </button>
    </div>
    <?php if ($params->get('save_history', 0)) : ?>
    <div class="btn-group">
    <?php echo $this->form->getInput('contenthistory'); ?>
    </div>
    <?php endif; ?>
    </div>
    <fieldset>
    <div class="tab-content">
    <div class="tab-pane active" id="editor">
    <span class="arial"><?php echo $this->form->renderField('title'); ?>

    <?php if (is_null($this->item->id)) : ?>
    <?php endif; ?>
    </span>
    <div class="tab-pane" id="publishing">
    <span class="arial"><?php echo $this->form->renderField('catid'); ?>
    <?php echo $this->form->renderField('state'); ?>
    </span></div>
    <p> </p>
    <div class="width" id="editor">
    <?php echo $this->form->getInput('articletext'); ?>
    </div>
    <input type="hidden" name="task" value="" />
    <input type="hidden" name="return" value="<?php echo $this->return_page; ?>" />
    <?php if ($this->params->get('enable_category', 0) == 1) :?>
    <input type="hidden" name="jform[catid]" value="<?php echo $this->params->get('catid', 1); ?>" />
    <?php endif; ?>
    </div>
    <?php echo JHtml::_('form.token'); ?>
    </fieldset>
    </form>
    </div>

    Commentaire


    • #3
      Re : Frontend Nouvel Article : aucun message pour dire que l'alias existe déjà

      Bonjour,

      Excusez-moi de vous déranger avec ça mais je n'arrive pas à m'en dépatouiller... Tout d'abord, j'aimerais savoir si c'est un problème que vous rencontrez aussi ? Ou c'est un bug quelque part dans mes fichiers ?

      Commentaire


      • #4
        Re : Frontend Nouvel Article : aucun message pour dire que l'alias existe déjà

        Salut,
        avant d'aller tripatouiller un edit.php, t'es-tu assuré que, dans l'index.php de ton template, tu as la ligne suivante :

        <jdoc:include type="message" />
        qui se place en général de cette façon (pas obligatoire) :
        <jdoc:include type="message" />
        <jdoc:include type="component" />
        Cette ligne récupère les avertissements et les messages d'erreur.
        Un message d’erreur sur votre site Joomla ... ayez le reflexe de consulter lla base de connaissance : https://kb.joomla.fr

        Ce forum, vous l'aimez ? il vous a sauvé la vie ? Vous y apprenez chaque jour ? Alors adhérez à l'AFUJ https://www.joomla.fr/association/adherer

        Commentaire


        • #5
          Re : Frontend Nouvel Article : aucun message pour dire que l'alias existe déjà

          Si je pouvais, je te remercierais vingt fois ! Moi qui pensais devoir affronter une montagne de php, c'est réglé en deux minutes. Vraiment bien vu, merci pour ton aide.

          Commentaire

          Annonce

          Réduire
          Aucune annonce pour le moment.

          Partenaire de l'association

          Réduire

          Hébergeur Web PlanetHoster
          Travaille ...
          X