Afficher la catégorie parent de l'article dans les résultats de recherches

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Afficher la catégorie parent de l'article dans les résultats de recherches

    Bonjour à tous,
    Je souhaiterais savoir s'il est possible d'afficher la catégorie parent en plus de la catégorie de l'article dans les résultats de recherche renvoyés par default_result.php ?

    Comme le fait cette portion pour la catégorie :

    Code PHP:
        <?php if ($result->section) : ?>
            <dd class="result-category">
                <span class="small<?php echo $this->pageclass_sfx?>">
                    (<?php echo $this->escape($result->section); ?>)
                </span>
            </dd>
        <?php endif; ?>
    D'avance merci.

  • #2
    Re : Afficher la catégorie parent de l'article dans les résultats de recherches

    ça c'est du code qui ressemble plus à une version 1.5 qu'à une 3
    Christophe
    http://www.webcrea.fr

    Commentaire


    • #3
      Re : Afficher la catégorie parent de l'article dans les résultats de recherches

      Envoyé par webcrea Voir le message
      ça c'est du code qui ressemble plus à une version 1.5 qu'à une 3
      Il s'agit pourtant d'un extrait du code présent dans :
      Joomla_3.2.3-Stable-Full_Package_French_v2\components\com_search\views \search\tmpl\default_results.php

      code complet :
      Code PHP:
      <?php
      /**
       * @package     Joomla.Site
       * @subpackage  com_search
       *
       * @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;
      ?>

      <dl class="search-results<?php echo $this->pageclass_sfx?>">
      <?php foreach ($this->results as $result) : ?>
          <dt class="result-title">
              <?php echo $this->pagination->limitstart $result->count.'. ';?>
              <?php if ($result->href) :?>
                  <a href="<?php echo JRoute::_($result->href); ?>"<?php if ($result->browsernav == 1) :?> target="_blank"<?php endif;?>>
                      <?php echo $this->escape($result->title);?>
                  </a>
              <?php else:?>
                  <?php echo $this->escape($result->title);?>
              <?php endif; ?>
          </dt>
          <?php if ($result->section) : ?>
              <dd class="result-category">
                  <span class="small<?php echo $this->pageclass_sfx?>">
                      (<?php echo $this->escape($result->section); ?>)
                  </span>
              </dd>
          <?php endif; ?>
          <dd class="result-text">
              <?php echo $result->text?>
          </dd>
          <?php if ($this->params->get('show_date')) : ?>
              <dd class="result-created<?php echo $this->pageclass_sfx?>">
                  <?php echo JText::sprintf('JGLOBAL_CREATED_DATE_ON'$result->created); ?>
              </dd>
          <?php endif; ?>
      <?php 
      endforeach; ?>
      </dl>

      <div class="pagination">
          <?php echo $this->pagination->getPagesLinks(); ?>
      </div>

      Commentaire


      • #4
        Re : Afficher la catégorie parent de l'article dans les résultats de recherches

        Etat de l'avancé de mes recherches :
        Le fichier plugins\search\content\content.php contient la requête qui renvoi les résultats.
        Code PHP:
                    $query->select('a.title AS title, a.metadesc, a.metakey, a.created AS created')
                        ->
        select($query->concatenate(array('a.introtext''a.fulltext')) . ' AS text')
                        ->
        select('c.path AS section, ' $case_when ',' $case_when1 ', ' '\'2\' AS browsernav')

                        ->
        from('#__content AS a')
                        ->
        join('INNER''#__categories AS c ON c.id=a.catid')
                        ->
        where(
                            
        '(' $where ') AND a.state=1 AND c.published = 1 AND a.access IN (' $groups ') '
                                
        'AND c.access IN (' $groups ') '
                                
        'AND (a.publish_up = ' $db->quote($nullDate) . ' OR a.publish_up <= ' $db->quote($now) . ') '
                                
        'AND (a.publish_down = ' $db->quote($nullDate) . ' OR a.publish_down >= ' $db->quote($now) . ')'
                        
        )
                        ->
        group('a.id, a.title, a.metadesc, a.metakey, a.created, a.introtext, a.fulltext, c.path, a.alias, c.alias, c.id')
                        ->
        order($order); 
        C'est en modifiant cette requête et en y ajoutant une jonction du champ categories.parent_id sur categories.id que nous pourrions retourner la valeur title sous la forme par example de parent_section et ainsi l'utiliser dans default_results.php

        En attendant d'y arriver, j'opte pour la modification suivante:
        remplacer
        Code PHP:
        ->select('c.title AS section, ' $case_when ',' $case_when1 ', ' '\'2\' AS browsernav'
        par
        Code PHP:
        ->select('c.path AS section, ' $case_when ',' $case_when1 ', ' '\'2\' AS browsernav'
        et
        Code PHP:
        ->group('a.id, a.title, a.metadesc, a.metakey, a.created, a.introtext, a.fulltext, c.path, a.alias, c.alias, c.id'
        par
        Code PHP:
        ->group('a.id, a.title, a.metadesc, a.metakey, a.created, a.introtext, a.fulltext, c.title, a.alias, c.alias, c.id'
        Solution de contournement qui renvoi le chemin complet de la catégorie.

        Commentaire

        Annonce

        Réduire
        Aucune annonce pour le moment.

        Partenaire de l'association

        Réduire

        Hébergeur Web PlanetHoster
        Travaille ...
        X