IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

Developpement Composant -> réécriture d'URL


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Webmaster - Développeur/intégrateur web
    Inscrit en
    Septembre 2011
    Messages
    210
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Jura (Franche Comté)

    Informations professionnelles :
    Activité : Webmaster - Développeur/intégrateur web
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2011
    Messages : 210
    Par défaut Developpement Composant -> réécriture d'URL
    Bonjour à toutes et tous !!

    Je suis en train de finaliser la création d'un composant pour Joomla! et comme il est dit dans le titre, j'ai un soucis avec la réécriture d'URL.

    J'ai bien créé ma class "router.php" qui est bien appelée par le fichier "racine" de mon composant, et j'utilise bien "JRoute" pour réécrire mes URL en claire.

    Le souci c'est que Joomla! ignore mon composant et charge le contenu du composant natif "com_content".

    exemple si je renvois l'url suivante :
    "http://localhost/lafoliedesvernis/vernitheque/revendeurs/2-printemps-haussmann.html", Joomla va m'afficher l'article ayant l'ID 2 plutot que de m'afficher la fiche revendeur ayant pour ID 2. Je sens que je touche au but, il doit manquer due code quelque part mais je ne vois pas quoi... qu'est ce qui fait que Joomla va utuliser MON router et pas celui du "com_content" ??

    Je remet le code de mon router si certains veulent le voir :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    <?php
      defined('_JEXEC') or die('Restricted access');
     
      function VernithequeBuildRoute( &$query )
      {
        $segments = array();
     
        if (isset($query['view'])) {
    		$segments[0] = $query['view'];
      		unset($query['view']);
      	};
     
        if (isset($query['id'])) {
     			$segments[1] = $query['id'];
      		unset($query['id']);
      	};
     
        return $segments;
      } // End VernithequeBuildRoute function
     
      function VernithequeParseRoute( $segments )
      {
        $vars = array();
     
        if (count($segments) > 0) {
     
      		$vars['view'] = $segments[0];
          switch ($vars['view']) {
            case 'all':
          		$catid = explode(':', $segments[1]);
          		$vars['catid']= (int) $catid[0];
    			break;
            case 'category':
          		$vars['id']   = (int) $segments[1];
    			break;
            case 'marques':
          		$id   = explode(':', $segments[1]);      		
          		$vars['id']= (int) $id[0];        
    			break;
            case 'revendeurs':
          		$id   = explode(':', $segments[1]);      		
          		$vars['id']= (int) $id[0];        
    			break;
            case 'vernis':
          		$id   = explode(':', $segments[1]);      		
          		$vars['id']= (int) $id[0];        
    			break;
            case 'configuration':
          		$id   = explode(':', $segments[1]);      		
          		$vars['id']= (int) $id[0];        
    			break;
            case 'panel':
          		$id   = explode(':', $segments[1]);      		
          		$vars['id']= (int) $id[0];        
    			break;
     
          };
     
        } else {
          $vars['view'] = $segments[0];
        } // End count(segments) statement
     
        return $vars;
      } // End VernithequeParseRoute
     
    ?>
    Merci à tous pour votre , c'est un peu urgent allez si vous avez le moindre bout d'idée merci de me le transmettre.

    Bonne journée à toutes et tous !!

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    334
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 334
    Par défaut
    Salut
    Je n'ai jamais utilisé le router Joomla, il faut peut-être le déclarer de la même manière qu'il faut déclarer son propre JHTML.

Discussions similaires

  1. [Joomla!] developper composant joomla
    Par nezha1977 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 22/02/2007, 17h24
  2. Réécriture d'url dans fichier ASP
    Par Ishizaki dans le forum ASP
    Réponses: 1
    Dernier message: 22/02/2007, 11h44
  3. ASP + Access, réécriture d'URL
    Par duchesnef dans le forum ASP
    Réponses: 5
    Dernier message: 14/09/2006, 09h54
  4. La réécriture d'URL avec Apache
    Par agencep dans le forum Langage
    Réponses: 3
    Dernier message: 25/04/2006, 16h37
  5. Réécriture d'url en asp.
    Par éelise dans le forum ASP
    Réponses: 4
    Dernier message: 13/12/2005, 08h53

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo