Url avec ? et UrlRewrite

Bonjour à tous.

Est-ce que dans les prochaines versions il est prévu de supprimer les ? Des url et de passer sur un système à base de re-écriture d'url ?

La raison est simple, le ? est pas top pour le référencement et la re-écriture d'url est bien plus souple.

J'ai un string de l'array

«1

Réponses

  • Salut,
    le problème avec l'url rewriting ce que tous les hébergeurs ne le propose pas et étant donné que Pluxml ce veut le plus ouvert possible je ne pense pas que les développeurs répondrons favorablement à ta demande. En revanche je pense qu'il serait judicieux de proposer cette fonctionnalité dans le Wiki pour ceux que ça intéresse.
  • Salut, en attendant une réponse j'ai creusé un peu. Pour arriver à intégrer l'UrlRewrite il faut modifier toute la gestion des url dans le core de pluxml. Peut être peut-on envisager une solution intermédiaire en supprimant le ?.

    Je prend exemple sur la gestion des catégories. Actuellement l'url ressemble à http://www.monsite.fr/?categorie1/nomcategorie, une url dans le genre http://www.monsite.fr/categorie/nomcategorie-1 serait plus logique. Ce soir je jette un œil côté code si c'est possible.

    Le problème est que tout ce qui est après le ? est considéré souvent par les moteurs de recherches comme des paramètres donc inutile de les indexer.

    J'ai un string de l'array

  • pas si sur que ça , justement ces paramètres vont a la pêche de données spécifiques , les moteurs de recherche se veulent aussi pertinent ... quelle intérêt aurait-ils a ignorer ces paramètres , du moins le premier ?

    Pour l'url rewriting , ne pas oublier de gérer aussi l'accès a l'administration :) , sous peine de ne plus y avoir accés avec un pluxml qui rechercherait une categorie ou un article 'admin' :) ....

    GC


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Pourtant sur la page conseils aux webmasters de google : http://www.google.com/support/webmasters/bin/answer.py?answer=35769&hl=fr il est dit :
    Si vous utilisez des pages dynamiques (l'URL de la page contient alors le caractère "?"), n'oubliez pas que ces pages risquent de ne pas être explorées correctement par certains robots de moteur de recherche. Il est donc conseillé de limiter le nombre et les paramètres de ces URL.

    J'ai un string de l'array

  • juillet 2009 modifié
    flipflip a écrit:
    Pourtant sur la page conseils aux webmasters de google : http://www.google.com/support/webmasters/bin/answer.py?answer=35769&hl=fr il est dit :
    Si vous utilisez des pages dynamiques (l'URL de la page contient alors le caractère "?"), n'oubliez pas que ces pages risquent de ne pas être explorées correctement par certains robots de moteur de recherche. Il est donc conseillé de limiter le nombre et les paramètres de ces URL.
    et
    pas si sur que ça , justement ces paramètres vont a la pêche de données spécifiques , les moteurs de recherche se veulent aussi pertinent ... quelle intérêt aurait-ils a ignorer ces paramètres , du moins le premier ?
    ça se tient :)

    En résumé , le mode d'url génré par pluxml n'est pas un handicap a son indexation.

    Par contre :
    monsite/?categorie1/machin_chose
    monsite/index.php?categorie1/machin_chose
    www.monsite/?categorie1/machin_chose
    www.monsite/index.php?categorie1/machin_chose

    est lui un handicap certain : 4 url pour une page unique , sans compter les pages dénué de chapo , ou de content ... qui peuvent donner jusqu'a 4 url pour un même contenu :) .

    En moyenne on est a 4 url par page possible si l'on y aucune attention.

    Il faut donc voir le problème de référencement ailleurs que dans la syntaxe de l'url elle-même. (a mon humble avis).

    Voici ce que je met pour les hebergement qui ont besoin d'un referencement correct dans un htaccess :
    RewriteEngine on
    RewriteCond %{HTTP_HOST} ^monsite.com$
    RewriteRule ^(.*) http://www.monsite.com/$1 [QSA,L,R=301]
    RewriteRule ^index\.php$ / [QSA,L,R=301]
    
    qui fome l'url en www et sans index.php .

    sur l'une des quatre url en exemple ci-dessus , on retombe toujours sur :
    www.monsite.com/?var
    et la page d'acceuil : www.monsite.com/
    (Cette solution ne marche pas dans free )

    En dernier lieu , il est vrai que l'url
    ?article1/nom-de-l-article
    reste moyenne et ambigu , mais ne ressemble pas a
    ?var1=yyy&var2=zzz&var3=ho!

    :)

    Cordialement


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • flipflipflipflip Member
    juillet 2009 modifié
    est lui un handicap certain : 4 url pour une page unique , sans compter les pages dénué de chapo , ou de content ... qui peuvent donner jusqu'a 4 url pour un même contenu
    Pour les moteurs de recherche c'est du duplicate content, avec à la clé de grand risque de voir aucune de ces pages indexées.
    reste moyenne et ambigu , mais ne ressemble pas a
    ?var1=yyy&var2=zzz&var3=ho!
    Forcement c'est toujours mieux avec la version actuel, mais comme l'a dit fightsoul, l'urlRewrite n'est pas géré par tout les hébergeurs.

    En fait je me demande le pourquoi du ? dans les url de pluxml ? Puisque la forme classique var=1 n'est pas utilisée alors il me semble que c'est difficilement récupérable par $_GET.

    Une autre raison du ? qui pose problème sauf que cette fois c'est avec les pages statiques. J'ai créer une page qui envoie un mail de validation, l'utilisateur doit cliqué sur un lien qui ressemble à : http://www.monsite/?static1/creer-un-compte/?cle=123456789. En temps normal je récupère je récupère la valeur de cle avec $_GET le hic est que ça va difficilement faisable puisque il y a déjà un ? au début donc le second n'est pas considéré comme un segment de variable. La solution remplacé le second ? par & ce qui donne http://www.monsite/?static1/creer-un-compte/&cle=123456789 mais ça comme à être un peu du n'importe quoi.

    Ton code pour le htaccess marche bien au contraire :)

    J'ai un string de l'array

  • Pluxml utilise le fichier bootstrap index.php pour aiguiller tous les traitements.
    On a donc besoin de récupérer de cette façon (?article1/mon-article) une chaine (ici => article1/mon-article) que le controleur plxMotor pourra analyser pour lancer les traitements adéquates...
  • Bonjour

    entre deux escales estivales , je dépose en demo ici : http://doc-css.com/urw-pluxml/ une version de pluxml qui peut fonctionner en urlrewriting ou en version classique.

    l'archive test est donc la : http://doc-css.com/urw-pluxml/telechargement/dXJ3LXBsdXhtbC56aXAqOGNjOTJm
    ou ici (si vous ne souhaitez pas tester le lien réecrit : http://doc-css.com/urw-pluxml/?telechargement/dXJ3LXBsdXhtbC56aXAqOGNjOTJm

    Pour que cette version marche , sans remanier le système des url et en n'enlevant que le ? (.... qui semble en gêner beaucoup :) ) , Les url internes sont écrites en chemin absolu et non plus relatif (/ des url obligent) .

    Je reprecise que l'urlrewriting ne marche pas sur free , et que si vous tentez malgré tous de l'activer a l'installation , vous allez droit au devant de bugs :) , il vous faudra aller effacer le fichier htaccess générer via ftp et relancé ensuite une installation.

    @marama et @stephane , les modification serait plutôt mineur si les url de pluxml ne comportaient pas de / , les chemins relatifs serait alors compatibles , seul le point d'interrogation et le fichier htaccess serait a gérer.

    Bonnes vacances et bon test a tous ....


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • StéphaneStéphane Member, Former PluXml Project Manager
    Salut gcyrillus
    Je suis en mode vacances pendant 10 jours. Je regarde ça en détails dès mon retour.
    Merci en tout cas pour t'être penché sur le problème qui fera surement avancé le sujet

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • Bonne idée tout ça à tester dès que j'ai un moment.

    Merci

    J'ai un string de l'array

  • Superbe avancée! L'amélioration des urls... j'en rêve depuis des mois voir années :)

    good job!
  • Je reviens sur cette modification. Pour le moment je n'est pas testé mais est-ce que tu a modifié le core de PluXml ou bien tu a simplement écrit un .htaccess. J'ai fais quelques modification sur ma version et j'ai un peu la flemme de tout reprendre :)

    J'ai un string de l'array

  • StéphaneStéphane Member, Former PluXml Project Manager
    Pour avoir regardé le code, j'ai notamment vu que le fichier class.plx.show.php est impacté à plusieurs reprises pour prendre en compte l'url rewriting. J'ai bien reperé la fonction urllink() et l'utilisation de la variable linkit à plusieurs reprises.
    Il y a aussi le fichier d'install qui créé le .htaccess

    Gcyrillus, j'oublie des choses ?

    Merci

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • août 2009 modifié
    bonjour,

    @Stephane .

    En regle generale j'ai repris tout les chemin de type "./" produits par les differentes fonction de plxShow avec : $this->linkit; ou $this->aConf
    (La demo ne voit pas cette correction faites sur le ficher feed.php qui en aurait aussi besoin , autant pour prouire les deux liens vers les fills , que ceux des commentaires ou articles mis en lien )

    Le fichier parametres.xml , embarque aussi un champs supplementaire , ce champ supplementaire est en type hidden , sur le formulaire dans l'admin de façon a conserver la config de l'urlrewriting. (accessible par aConf ) .

    Je rejette un oeil au script ce soir en rentrant .
    L'idéal serait que je liste l'ensemble des modifs :)

    A plus
    Voici une liste des modifs que j'ai faites
    Les modifications effectuées pour l'url rewriting :
    
    Les fichiers concernés :
    install.php
    index.php
    version
    
    core/admin/parametres_avances.php
    core/admin/images.php
    core/admin/documents.php
    core/admin/version.php
    
    core/lib/class.plx.admin.php
    core/lib/class.plx.show.php
    core/lib/class.plx.feed.php
    
    themes/defaut/footer.php
    themes/defaut/header.php
    
    ================================================
    INSTALL.PHP :
    
    la variable : $config 
    Lignes 32 a 53 :modif a la ligne 39 
    ajout du champ : urlrewrite
    CODE :
    $config = array('title'=>'Pluxml', 
    				'description'=>'le blog full XML',
    				'racine'=>plxUtils::getRacine(), 
    				'delta'=>'+00:00', 
    				'allow_com'=>1, 
    				'mod_com'=>0, 
    				'capcha'=>1, 
    				'urlrewrite'=>trim($_POST['urlrewrite']),
    				'style'=>'defaut', 
    				'bypage'=>5,
    				'bypage_admin'=>10, 
    				'bypage_admin_coms'=>10, 				
    				'bypage_feed'=>8, 
    				'tri'=>'date-desc',
    				'images'=>'data/images/', 
    				'documents'=>'data/documents/', 
    				'racine_articles'=>'data/articles/',
    				'racine_commentaires'=>'data/commentaires/',
    				'racine_statiques'=>'data/statiques/',
    				'statiques'=>'data/configuration/statiques.xml', 
    				'categories'=>'data/configuration/categories.xml', 
    				'passwords'=>'data/configuration/passwords.xml'
    				);
    				
    ajout de la variable $htaccess dans la fonction  instal($content, $config){} 
    Ligne 59
    CODE:
    $htaccess ='
    RewriteEngine on
    
    #avant de lancer la reecriture , on verifie que les repertoires ou fichiers demander existent (accés admin , images par exemple)
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-l
      # Et enfin si la page demander ne correspond pas a un fichier ou repertoire existant , on applique la récriture.
      RewriteRule ^(.*)$ index.php?$1 [L,QSA]
      ';
    
     et ajout de la condition de creation du fichier htaccess :
     Ligne 129 
     CODE: 
     if ($content['urlrewrite']==1)
    {
    plxUtils::write($htaccess,'.htaccess');
    }
    
    modification du formulaire:
    Ligne 162 (ligne 170,171,172 )
    CODE:
    <form action="install.php" method="post">
    	<fieldset>
    		<p class="field"><label>Nom du rédacteur :</label></p>
    		<?php plxUtils::printInput('name', '', 'text', '20-255') ?>
    		<p class="field"><label>Mot de passe du rédacteur :</label></p>
    		<?php plxUtils::printInput('pwd', '', 'password', '20-255') ?>
    		<p class="field"><label>Confirmation du mot de passe :</label></p>
    		<?php plxUtils::printInput('pwd2', '', 'password', '20-255') ?>
    		<p class="field"><label>Activer l'url rewriting :</label>(N'est pas modifiable par la suite)</p>
    		<p><strong>Ne pas activer sur un hebergement free !</strong></p>
    		<?php plxUtils::printSelect('urlrewrite',array('1'=>'Oui','0'=>'Non'), $plxAdmin->aConf['urlrewrite']);?>
    		<?php plxUtils::printInput('version', $version, 'hidden') ?>
    		<p><input type="submit" value="Installer" /></p>
    	</fieldset>
    </form>
    
    FIN INSTALL.PHP
    
    ********************************************
    
    INDEX.PHP
    dans la partie : 
    #configuration avançée 
    Ligne 17
    CODE:
    if(!file_exists('.htaccess')) {
    define('PLX_CSS', PLX_ROOT);
    }
    else {
    $uricss=" http://" . $_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI'];
    define('PLX_CSS', $uricss);
    }
    
    FIN INDEX.PHP
    
    ********************************************
    
    CORE/ADMIN/PARAMETRES_AVANCES.PHP
    
    le formulaire 
    ligne 23  (ligne 30)
    
    CODE:
    <h2>Edition des paramètres de Pluxml</h2>
    
    <form action="parametres_avances.php" method="post" id="change-cf-file">
    	<fieldset class="withlabel">
    		<legend>Configuration avancée (utilisateur averti) :</legend>
    		<p class="field"><label>Activer le capcha anti-spam :</label></p>
    		<?php plxUtils::printSelect('capcha',array('1'=>'Oui','0'=>'Non'), $plxAdmin->aConf['capcha']);?>
    		<?php plxUtils::printInput('urlrewrite', $plxAdmin->aConf['urlrewrite'],'hidden'); ?>
    		<p class="field"><label>Emplacement des images (dossier) :</label></p>
    		<?php plxUtils::printInput('images', $plxAdmin->aConf['images']); ?>
    		<p class="field"><label>Emplacement des documents (dossier) :</label></p>
    		<?php plxUtils::printInput('documents', $plxAdmin->aConf['documents']); ?>
    		<p class="field"><label>Emplacement des articles (dossier) :</label></p>
    		<?php plxUtils::printInput('racine_articles', $plxAdmin->aConf['racine_articles']); ?>
    		<p class="field"><label>Emplacement des commentaires (dossier) :</label></p>
    		<?php plxUtils::printInput('racine_commentaires', $plxAdmin->aConf['racine_commentaires']); ?>
    		<p class="field"><label>Emplacement des pages statiques (dossier) :</label></p>
    		<?php plxUtils::printInput('racine_statiques', $plxAdmin->aConf['racine_statiques']); ?>
    		<p class="field"><label>Emplacement du fichier des catégories (fichier xml) :</label></p>
    		<?php plxUtils::printInput('categories', $plxAdmin->aConf['categories']); ?>
    		<p class="field"><label>Emplacement du fichier des pages statiques (fichier xml) :</label></p>
    		<?php plxUtils::printInput('statiques', $plxAdmin->aConf['statiques']); ?>
    		<p class="field"><label>Emplacement du fichier des mots de passe (fichier xml) :</label></p>
    		<?php plxUtils::printInput('passwords', $plxAdmin->aConf['passwords']); ?>
    	</fieldset>
    	<p><input type="submit" value="Modifier la configuration avancée" /></p>
    </form>
    
    FIN CORE/ADMIN/PARAMETRES_AVANCES.PHP
    ***************************************
    CORE/ADMIN/IMAGES.PHP
    Ligne 93 dans la partie 
    Les liens relatifs sont passés en absolus 
    CODE:
    
    
    # On affiche les différents liens
    					echo '</p>';
    					echo '<p class="thumb_link">';
    					echo '<a href="images.php?img='.rawurlencode($name).'"><img src="img/eye.png" alt="Voir" title="Voir l\'image" /></a> ';
    					echo '<a href="javascript:void(0)" title="Ajouter l\'image dans le chapo" onclick="opener.insimg(\'chapo\', \''.str_replace('../', '',  $plxAdmin->aConf['racine'].$dirImg.$aImg[$i]).'\')">';
    					echo '<img src="img/layout-chapo.png" alt="Ajouter chapo" /></a> ';
    					echo '<a href="javascript:void(0)" title="Ajouter la miniature dans le chapo" onclick="opener.insimg(\'chapo\', \''.str_replace('../', '',  $plxAdmin->aConf['racine'].$dirImg.$aImg[$i].'.tb').'\')">';
    					echo '<img src="img/layout-chapo-mini.png" alt="Ajouter mini chapo" /></a> ';					
    					echo '<a href="javascript:void(0)" title="Ajouter l\'image dans le contenu" onclick="opener.insimg(\'content\', \''.str_replace('../', '',  $plxAdmin->aConf['racine'].$dirImg.$aImg[$i]).'\')">';
    					echo '<img src="img/layout-content.png" alt="Ajouter contenu" /></a> ';
    					echo '<a href="javascript:void(0)" title="Ajouter la miniature dans le contenu" onclick="opener.insimg(\'content\', \''.str_replace('../', '',  $plxAdmin->aConf['racine'].$dirImg.$aImg[$i].'.tb').'\')">';
    					echo '<img src="img/layout-content-mini.png" alt="Ajouter mini contenu" /></a> ';
    					echo '<a href="?del='.$i.'&hash='.$_SESSION['hash'].'" title="Supprimer l\'image" onclick="Check=confirm(\'Supprimer cette image ?\');if(Check==false) return false;"><img src="img/delete.png" alt="Supprimer" /></a></p>';
    					echo '</div>'."\n";
    					
    FIN CORE/ADMIN/IMAGES.PHP
    
    ***************************************
    
    
    CORE/ADMIN/DOCUMENTS.PHP
    passage des lien relatif en absolu
     Ligne 79
    CODE:
    <?php } else { # On a des documents
    	$nb = count($aDoc);
    	for($i=0; $i < $nb; $i++) { ?>
    		<tr class="line-<?php echo $i%2; ?>">
    			<td class="tc1"> <?php echo plxUtils::strCut($aDoc[$i],100); ?></td>
    			<td class="tc1"> 
    				<a href="javascript:void(0)" title="Ajouter le fichier dans le chapo" onclick="opener.insdoc('chapo', '<?php echo  $plxAdmin->aConf['racine'].'?telechargement/'.plxEncrypt::encryptId($aDoc[$i]) ?>', '<?php echo $aDoc[$i] ?>')">
    				<img src="img/layout-chapo.png" alt="Ajouter chapo" /></a>  
    				<a href="javascript:void(0)" title="Ajouter le fichier dans le contenu" onclick="opener.insdoc('content', '<?php echo $plxAdmin->aConf['racine'].'?telechargement/'.plxEncrypt::encryptId($aDoc[$i]) ?>', '<?php echo $aDoc[$i] ?>')">
    				<img src="img/layout-content.png" alt="Ajouter contenu" /></a> 
    				<a href="documents.php?del=<?php echo $i.'&hash='.$_SESSION['hash'] ?>" title="Supprimer le fichier" onclick="Check=confirm('Supprimer ce fichier ?');if(Check==false) return false;">
    				<img src="img/delete.png" alt="Supprimer" /></a>
    			</td>
            </tr>
    	<?php } # Fin for liste des documents ?>
    	
    FIN	CORE/ADMIN/DOCUMENTS.PHP
    	
    ***********************************
    
    CORE/ADMIN/VERSION.PHP
    CODE complet de ce fichier :
    <?php
    
    /** DESACTIVER !
     * Page pour vérifier la version officielle
     *
     * @package PLX
     * @author	Florent MONTHEL
     **/
    
    include('prepend.php');
    
    
    # Inclusion du header et du footer
    include('top.php');
    echo '<p class="msg"><strong>Cette version de pluxml n\'est pas officiel . Cette option est désactivée - <a href="parametres_base.php" title="Retour à la configuration de base">retour</a></strong></p>';
    include('foot.php');
    ?>
    
    FIN CORE/ADMIN/VERSION.PHP
    
    *************************************
    
    CORE/LIB/CLASS.PLX.ADMIN.PHP
    
    Injection d'une nouvelle fonction et variable pour gerer le type d'url  definie dans la configuration
    
    Ligne 21
    
    CODE:
    	$this->linkit=$this->urllink();
    	
    PUIS
    Ligne 471
    CODE/
    	/**
    	 * Méthode qui modifie les lien selon la configuration de l'urlreriting
    	 *
    	 * @return	urlrewritesetup
    	 * @author	Cyrille Griboval
    	 **/
    	function urllink() {
    
    	if  ($this->aConf['urlrewrite'] == '1')
    	{
    	$this->linkit= $this->aConf['racine'];}
    	else 
    	{$this->linkit='./?';}
    return $this->linkit;
    	}	
    	
    FIN CORE/LIB/CLASS.PLX.ADMIN.PHP
    
    ***********************************************
    
    CORE/LIB/CLASS.PLX.SHOW.PHP
    Injection d'une nouvelle fonction et variable pour gerer le type d'url  definie dans la configuration
    et modification des lien generé par les differentes fonctions
    
    Ligne 23
    
    CODE:
    	$this->linkit=$this->urllink();
    =============
    PUIS
    Ligne 218
    CODE:
    	function staticList($extra='') {
    	
    		# Si on a la variable extra, on affiche un lien vers la page d'accueil
    		if($extra != '') {
    			$title = htmlspecialchars($this->plxMotor->aConf['title'],ENT_QUOTES,PLX_CHARSET);
    			if($this->plxMotor->mode == 'home' AND $this->plxMotor->cible == '')
    				echo '<li class="active"><a href="'.$this->plxMotor->aConf['racine'].'" title="'.$title.'">'.$extra.'</a></li>';
    			else
    				echo '<li><a href="'.$this->plxMotor->aConf['racine'].'" title="'.$title.'">'.$extra.'</a></li>';
    		}
    		# On verifie qu'il y a des pages statiques
    		if($this->plxMotor->aStats) {
    			foreach($this->plxMotor->aStats as $k=>$v) {
    				if($v['readable'] == 1 AND $v['active'] == 1) { # La page existe bien et elle est active
    					$name = htmlspecialchars($v['name'],ENT_QUOTES,PLX_CHARSET);
    					$url = ''.$this->linkit.'static'.intval($k).'/'.$v['url'];
    					if($this->plxMotor->mode == 'static' AND $this->plxMotor->cible == $k)
    						echo '<li class="active"><a href="'.$url.'" title="'.$name.'">'.$name.'</a></li>';
    					else
    						echo '<li><a href="'.$url.'" title="'.$name.'">'.$name.'</a></li>';
    				}
    			} # Fin du while
    		}
    	}
    	
    ==================
    PUIS 
    Ligne 254
    CODE:
    	function catList($extra='', $format='#cat_name') {
    
    		# Si on a la variable extra, on affiche un lien vers la page d'accueil (avec $extra comme nom)
    		if($extra != '') {
    			$title = htmlspecialchars($this->plxMotor->aConf['title'],ENT_QUOTES,PLX_CHARSET);
    			if($this->plxMotor->mode == 'home' AND $this->plxMotor->cible == '')
    				echo '<li class="active"><a href="'.$this->plxMotor->aConf['racine'].'" title="'.$title.'">'.$extra.'</a></li>';
    			elseif($this->plxMotor->mode == 'article' AND $this->plxMotor->plxRecord_arts->f('categorie') == 'home')
    				echo '<li class="active"><a href="'.$this->plxMotor->aConf['racine'].'" title="'.$title.'">'.$extra.'</a></li>';
    			else
    				echo '<li><a href="'.$this->plxMotor->aConf['racine'].'" title="'.$title.'">'.$extra.'</a></li>';
    		}
    		# On verifie qu'il y a des categories
    		if($this->plxMotor->aCats) {
    			foreach($this->plxMotor->aCats as $k=>$v) {
    				if($v['articles'] > 0) { # On a des articles
    					$v['name'] = htmlspecialchars($v['name'],ENT_QUOTES,PLX_CHARSET);
    					# On modifie nos motifs
    					$name = str_replace('#cat_id',intval($k),$format);
    					$name = str_replace('#cat_name',$v['name'],$name);
    					$name = str_replace('#art_nb',$v['articles'],$name);
    					# Ok
    					$url = ''.$this->linkit.'categorie'.intval($k).'/'.$v['url'];
    					if($this->plxMotor->mode == 'categorie' AND $this->plxMotor->cible == $k)
    						echo '<li class="active"><a href="'.$url.'" title="'.$v['name'].'">'.$name.'</a></li>';
    					elseif($this->plxMotor->mode == 'article' AND $this->plxMotor->plxRecord_arts->f('categorie') == $k)
    						echo '<li class="active"><a href="'.$url.'" title="'.$v['name'].'">'.$name.'</a></li>';
    					else
    						echo '<li><a href="'.$url.'" title="'.$v['name'].'">'.$name.'</a></li>';
    				}
    			} # Fin du while
    		}
    	}
    
    ===================	
    PUIS 
    Ligne 313
    CODE:
    	function catName($type='') {
    
    		# On va verifier que la categorie existe en mode categorie
    		if($this->plxMotor->mode == 'categorie' AND isset($this->plxMotor->aCats[ $this->plxMotor->cible ])) {
    			# On recupere les infos de la categorie
    			$id = $this->plxMotor->cible;
    			$name = htmlspecialchars($this->plxMotor->aCats[ $id ]['name'],ENT_QUOTES,PLX_CHARSET);
    			$url = $this->plxMotor->aCats[ $id ]['url'];
    			# On effectue l'affichage
    			if($type == 'link')
    				echo '<a href="'.$this->linkit.'categorie'.intval($id).'/'.$url.'" title="'.$name.'">'.$name.'</a>';
    			else
    				echo $name;
    		}
    		# On va verifier que la categorie existe en mode article
    		elseif($this->plxMotor->mode == 'article' AND isset($this->plxMotor->aCats[ $this->plxMotor->plxRecord_arts->f('categorie') ])) {
    			# On recupere les infos de la categorie
    			$id = $this->plxMotor->plxRecord_arts->f('categorie');
    			$name = htmlspecialchars($this->plxMotor->aCats[ $id ]['name'],ENT_QUOTES,PLX_CHARSET);
    			$url = $this->plxMotor->aCats[ $id ]['url'];
    			# On effectue l'affichage
    			if($type == 'link')
    				echo '<a href="'.$this->linkit.'categorie'.intval($id).'/'.$url.'" title="'.$name.'">'.$name.'</a>';
    			else
    				echo $name;
    		}
    		# Mode home
    		elseif($this->plxMotor->mode == 'home') {
    			if($type == 'link')
    				echo '<a href="'.$this->plxMotor->aConf['racine'].'" title="'.htmlspecialchars($this->plxMotor->aConf['title'],ENT_QUOTES,PLX_CHARSET).'">Accueil</a>';
    			else
    				echo 'Accueil';
    		} else {
    			echo 'Non classé';
    		}
    	}
    ===============================
    
    PUIS Ligne 368
    CODE:
    	function artTitle($type='') {
    
    		if($type == 'link') { # Type lien
    			# On recupere les infos de l'article
    			$num = $this->artId();
    			$title = htmlspecialchars($this->plxMotor->plxRecord_arts->f('title'),ENT_QUOTES,PLX_CHARSET);
    			$url = $this->plxMotor->plxRecord_arts->f('url');
    			# On effectue l'affichage
    			echo '<a href="'.$this->linkit.'article'.$num.'/'.$url.'" title="'.$title.'">'.$title.'</a>';
    		} else { # Type normal
    			echo htmlspecialchars($this->plxMotor->plxRecord_arts->f('title'),ENT_QUOTES,PLX_CHARSET);
    		}
    	}
    
    
    ================================
    PUIS 
    Ligne 425
    CODE:
    	function artCat() {
    
    		# Initialisation de notre variable interne
    		$catId = $this->plxMotor->plxRecord_arts->f('categorie');
    		# On verifie que la categorie n'est pas "home"
    		if($catId != 'home') {
    			# On va verifier que la categorie existe
    			if(isset($this->plxMotor->aCats[ $catId ])) {
    				# On recupere les infos de la categorie
    				$name = htmlspecialchars($this->plxMotor->aCats[ $catId ]['name'],ENT_QUOTES,PLX_CHARSET);
    				$url = $this->plxMotor->aCats[ $catId ]['url'];
    				# On effectue l'affichage
    				echo '<a href="'.$this->linkit.'categorie'.intval($catId).'/'.$url.'" title="'.$name.'">'.$name.'</a>';
    			} else { # La categorie n'existe pas
    				echo 'Non classé';
    			}
    		} else { # Categorie "home"
    			echo '<a href="'.$this->plxMotor->aConf['racine'].'" title="'.htmlspecialchars($this->plxMotor->aConf['title'],ENT_QUOTES,PLX_CHARSET).'">Accueil</a>';
    		}
    	}
    
    ====================================
    PUIS
    Ligne 454
    CODE:
    	function artChapo() {
    
    		# On verifie qu'un chapo existe
    		if($this->plxMotor->plxRecord_arts->f('chapo') != '') {
    			# On recupere les infos de l'article
    			$num = $this->artId();
    			$title = htmlspecialchars($this->plxMotor->plxRecord_arts->f('title'),ENT_QUOTES,PLX_CHARSET);
    			$url = $this->plxMotor->plxRecord_arts->f('url');
    			# On effectue l'affichage
    			echo $this->plxMotor->plxRecord_arts->f('chapo');
    			echo '<p><a href="'.$this->linkit.'article'.$num.'/'.$url.'" title="Lire : '.$title.'">Lire : '.$title.'</a></p>'."\n";
    		} else { # Pas de chapo, affichage du contenu
    			echo $this->plxMotor->plxRecord_arts->f('content')."\n";
    		}
    	}
    =====================================
    PUIS 
    Ligne 489
    CODE:
    	function artFeed($type='atom') {
    
    		if($type == 'rss') # Type RSS
    			echo '<a href="'.$this->plxMotor->aConf['racine'].'feed.php?rss" title="Fil Rss des articles">Fil des articles</a>';
    		else # Type ATOM
    			echo '<a href="'.$this->plxMotor->aConf['racine'].'feed.php?atom" title="Fil Atom des articles">Fil des articles</a>';
    	}
    =====================================
    PUIS
    Ligne 504
    CODE:
    	function artNbCom() {
    
    		# On recupère le nb de commentaire selon le mode
    		if($this->plxMotor->mode == 'article')
    			$nb = $this->plxMotor->plxGlob_coms->count;
    		else
    			$nb = $this->plxMotor->plxRecord_arts->f('nb_com');
    		# A t'on besoin d'afficher le nb de commentaires ?
    		if((!$this->plxMotor->aConf['allow_com'] OR !$this->plxMotor->plxRecord_arts->f('allow_com')) AND !$nb)
    			return;
    		# Petit test pour l'orthographe
    		if($nb < 2)
    			$txt = $nb.' commentaire';
    		else
    			$txt = $nb.' commentaires';
    		# On effectue l'affichage selon le mode
    		if($this->plxMotor->mode == 'article') {
    			echo $txt;
    		} else {
    			# On recupere les infos de l'article
    			$num = intval($this->plxMotor->plxRecord_arts->f('numero'));
    			$title = htmlspecialchars($this->plxMotor->plxRecord_arts->f('title'),ENT_QUOTES,PLX_CHARSET);
    			$url = $this->plxMotor->plxRecord_arts->f('url');
    			# On effectue l'affichage
    			echo '<a href="'.$this->linkit.'article'.$num.'/'.$url.'#comments" title="'.$txt.' pour '.$title.'">'.$txt.'</a>';
    		}
    	}
    ======================================
    PUIS
    Ligne 621
    CODE:
    	function comFeed($type='atom',$article='') {
    
    		if($type == 'rss' AND $article != '') # Fil RSS des commentaires d'un article
    			echo '<a href="'.$this->plxMotor->aConf['racine'].'feed.php?rss/commentaires/article'.$article.'" title="Fil Rss des commentaires de cet article">Fil des commentaires de cet article</a>';
    		elseif($type == 'rss') # Fil RSS des commentaires global
    			echo '<a href="'.$this->plxMotor->aConf['racine'].'feed.php?rss/commentaires" title="Fil Rss global des commentaires">Fil des commentaires</a>';
    		elseif(	$article != '') # Fil ATOM des commentaires d'un article
    			echo '<a href="'.$this->plxMotor->aConf['racine'].'feed.php?atom/commentaires/article'.$article.'" title="Fil Atom des commentaires de cet article">Fil des commentaires de cet article</a>';
    		else # Fil ATOM des commentaires global
    			echo '<a href="'.$this->plxMotor->aConf['racine'].'feed.php?atom/commentaires" title="Fil Atom global des commentaires">Fil des commentaires</a>';
    	}
    ======================================
    PUIS
    Ligne 665
    CODE:
    	function pagination() {
    
    		# On verifie que la variable bypage n'est pas nulle
    		if($this->plxMotor->bypage) {
    			# Calcul des pages
    			$prev_page = $this->plxMotor->page - 1;
    			$next_page = $this->plxMotor->page + 1;
    			$last_page = ceil($this->plxMotor->plxGlob_arts->count/$this->plxMotor->bypage);
    			if($this->plxMotor->mode == 'home') { # En mode home
    				# Generation des URLs
    				$p_url = ''.$this->linkit.'page'.$prev_page; # Page precedente
    				$n_url = ''.$this->linkit.'page'.$next_page; # Page suivante
    				$l_url = ''.$this->linkit.'page'.$last_page; # Derniere page
    				$f_url = './'; # Premiere page
    			} elseif($this->plxMotor->mode == 'categorie') { # En mode categorie
    				# Generation des URLs
    				$get = explode('/',$this->plxMotor->get);
    				$p_url = ''.$this->linkit.''.$get[0].'/'.$get[1].'/page'.$prev_page; # Page precedente
    				$n_url = ''.$this->linkit.''.$get[0].'/'.$get[1].'/page'.$next_page; # Page suivante
    				$l_url = ''.$this->linkit.''.$get[0].'/'.$get[1].'/page'.$last_page; # Derniere page
    				$f_url = ''.$this->linkit.''.$get[0].'/'.$get[1]; # Premiere page
    			}
    			# On effectue l'affichage
    			if($this->plxMotor->page > 2) # Si la page active > 2 on affiche un lien 1ere page
    				echo '<a href="'.$f_url.'" title="Aller à la première page"><<</a> | ';
    			if($this->plxMotor->page > 1) # Si la page active > 1 on affiche un lien page precedente
    				echo '<a href="'.$p_url.'" title="Page précédente">< précédente</a> | ';
    			# Affichage de la page courante
    			echo 'page '.$this->plxMotor->page.' sur '.$last_page;
    			if($this->plxMotor->page < $last_page) # Si la page active < derniere page on affiche un lien page suivante
    				echo ' | <a href="'.$n_url.'" title="Page suivante">suivante ></a>';
    			if(($this->plxMotor->page + 1) < $last_page) # Si la page active++ < derniere page on affiche un lien derniere page
    				echo ' | <a href="'.$l_url.'" title="Aller à la dernière page">>></a>';
    		}
    	}
    ======================================
    
    PUIS
    Ligne 734
    CODE:
    	/**
    	 * Méthode qui modifie les lien selon la configuration de l'urlreriting
    	 *
    	 * @return	urlrewritesetup
    	 * @author	Cyrille Griboval
    	 **/
    	function urllink() {
    
    	if  ($this->aConf['urlrewrite'] == '1')
    	{
    	$this->linkit= $this->aConf['racine'];}
    	else 
    	{$this->linkit='./?';}
    return $this->linkit;
    	}	
    	
    FIN CORE/LIB/CLASS.PLX.show.PHP
    
    ***********************************************
    
    CORE/LIB/CLASS.PLX.FEED.PHP
    
    Dans ce fichier la fonction linkit et sa variable y sont aussi injecté ,et tout les liens generé sont repris.
    
    FIN CORE/LIB/CLASS.PLX.FEED.PHP
    
    *******************************
    
    THEME/DEFAUT/FOOTER.PHP
    
    recriture du lien relatif vers l'admin en lien absolue:
    CODE:
    <a href="<?php echo  $plxMotor->aConf['racine'];  ?>core/admin/">Administration</a> 
    
    FIN THEMES/DEFAUT/FOOTER.PHP
    
    **********************************
    
    THEMES/DEFAUT/HEADER.PHP
    reecriture des liens dans la partie head en lien absolu.
    Ligne 4
    CODE:
    <head>
    	<title><?php $plxShow->pageTitle(); ?></title>
    	<meta http-equiv="Content-Type" content="text/html; charset=<?php $plxShow->charset(); ?>" />
    	<link rel="stylesheet" type="text/css" href="<?php $plxShow->template(); ?>/style.css" media="screen" />
    	<link rel="alternate" type="application/atom+xml" title="Atom articles" href="<?php echo  $plxMotor->aConf['racine'];  ?>feed.php?atom" />
    	<link rel="alternate" type="application/rss+xml" title="Rss articles" href="<?php echo  $plxMotor->aConf['racine'];  ?>feed.php?rss" />
    	<link rel="alternate" type="application/atom+xml" title="Atom commentaires" href="<?php echo  $plxMotor->aConf['racine'];  ?>feed.php?atom/commentaires" />
    	<link rel="alternate" type="application/rss+xml" title="Rss commentaires" href="<?php echo  $plxMotor->aConf['racine'];  ?>feed.php?rss/commentaires" />
    </head>
    
    FIN THEMES/DEFAUT/HEADER.PHP
    


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Hello,

    On peut migrer sans souci vers la 4.1.1 depuis ta version ?

    Merci
  • septembre 2009 modifié
    bonjour,

    non , la verification de derniere version est d'ailleurs désactivé .

    Je n'ai pas encore regardé ni regardé pour une modification sur cette version , il y a la fonction artUrl() , qui permet probablement de faire ça plus proprement.

    La 4.2 semble ne pas etre si loin de sa sortie même si je ne sais pas ou en est Stéphane . Va t-il laissé une ouverture a la gestion des url , va t-il modifier l'ecriture des url (article01/nom-article par article-01_nom-article) , va t-il implémenter l'urlrewriting , ... ?

    Si changement d'url , un probleme se profile , sur free (ou les hebergement incompatible avec l'url rewriting ) , il ne sera pas possible de faire un htaccess permettant de rediriger les anciennes url vers les nouvelles (pour une compatibilité avec les favoris de vos visiteurs ou moteurs de recherche , par exemple )

    J'attend donc la 4.2 voir comment réagir a ce propos .

    (Sur free , il y a des astuces pour simuler l'url rewriting , mais je n'ai pas assez jouer avec pour en bien comprendre l'usage et les subtilités , Le passage par une page d'erreur et une redirection est aussi envisageable .)

    GC


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Bonjour à tous,

    J'ai décidé il y a quelques jours de migrer l'ensemble des sites que j'administre sous Pluxml, après avoir pris connaissance des dernières versions via un article de dhoko et après quelques tests, alors que je m'étais intéressé aux premières versions.

    J'ai attaqué ces migrations, mais quel fut mon étonnement de voir de si "moches" URLs ! Il me semble que les friendly URLs sont l'un des plus importants points de la SEO (Search engine optimization) pour les CMS et autres gestionnaires de contenu.

    J'espère que les développeurs y penseront pour les prochaines versions !

    J'ai en partie contourné les problèmes avec l'URL ReWriting pour une paires de mes sites. Pour ceux qu'il me reste à migrer, je pense testé UrwPluxml de gcyrillus-nomade même en 4.1, qui améliore cet aspect mais ne réponds pas encore complètement à l'ensemble des soucis de friendly URLs dans le cadre de la SEO.

    @+
  • @orx57 : il est vrai que ça pêche un peu à ce niveau et tu n'es pas le premier à remonter cette demande, on va regarder ce que l'on peut faire.
  • Bonjour/bonsoir

    Je vient tardivement de remarquer la sortie de la V2.

    Je vais probablement refaire une version urw , toujours avec la même impossibilité de mise a jour .

    Je suis donc interessé par ce que tu souhaiterais éventuellement et comme implanté en natif ? au futur pluxml .

    Cette version , comme beaucoup d'autre de mes test , sortent assez brut avec des "cahiers des charges" des plus simplistes sans garde-fou.

    @orx57 . quelle serait tes demandes ? , eliminé: article , statique et categorie de l'url ? ou plus subtile ? :)

    @tout le monde :
    Et plus generalement , quel type d'url taxer vous de : SEO friendly URLs , et que vous genent-il dans pluxml a ce niveau ?

    GC


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Salut. ;)
    @gcyrillus-nomade :
    Personnellement, ce qui me dérange ce sont les URL de type www.monsite.fr/?static1/accueil
    Une URL friendly serait www.monsite.fr/accueil
    Ce serait bien aussi de pouvoir choisir sa page d'accueil, je suis en train d'essayer de la faire pointer sur une page statique mais j'ai du mal. :s
    Merci. :p
  • Il faut à un moment ou un autre nqu'on passe cette info dans l'URL:
    - page statique/article/categorie etc
    - id de la ressource
    Donc un www.monsite.fr/accueil va être difficile non ?
  • StéphaneStéphane Member, Former PluXml Project Manager
    Lenezir a écrit:
    ...
    Ce serait bien aussi de pouvoir choisir sa page d'accueil, je suis en train d'essayer de la faire pointer sur une page statique mais j'ai du mal. :s
    Merci. :p
    Bonjour Lenezir

    Tu peux afficher une page statique en utilisant la ligne suivante:
    <?php $plxShow->staticInclude($id) ?>
    
    où $id = id numérique de la page statique

    exemple
    <?php $plxShow->staticInclude('1') ?>
    
    Tu peux mettre cette ligne dans le home.php de ton theme

    Stéphane.

    Consultant PluXml

    Ancien responsable du projet (2010 à 2018)

  • marama a écrit:
    Il faut à un moment ou un autre nqu'on passe cette info dans l'URL:
    - page statique/article/categorie etc
    - id de la ressource
    Donc un www.monsite.fr/accueil va être difficile non ?
    Si c'est possible ne vérifiant l'unicité des titres des articles, statiques, etc... et après il suffit de chercher la correspondance titre, par exemple accueil, avec un article ou une statique.
  • @progfrance : mouai bof pr les perfs...
  • Petite question, et suite de raisonement.

    Pourquoi ne pas construire des url, en precisant en premier param, le type , et en second la valeur
    cad:
    www.monsite.fr/article/accueil
    www.monsite.fr/statique/machinchose
    www.monsite.fr/categorie/truc/article/accueil

    Il me semble que c'est la procedure avec wp
    mouai bof pr les perfs...
    Et dans ce cas, pas de pbs de perf,
    Et puis c'est apache qui travail, pas le core.
  • Le pb de perfs vient si on n'a pas l'id ds l'url, il faut faire une regex sur un titre entier.
    Ça impose également d'avoir une unicité ds les titres

    Ces Urls, c'est un problème esthétique?
  • C'est peut-etre les 'noms' choisie qui deplaisent ?
    L'idée de l'arborescence me semble bonne et explicite , sauf peut-etre pour l'article , ou l'url ne montre pas a quelle rubrique est rattaché l'article , ce serait ma seule "doléance" :) .

    @progfrance : De plus faudrait aussi gérer les risques de doublon a la creations d'une pages statique , rubrique ou article dans les noms ...


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

  • Salut,

    L'idée de ne pas travailler sur les nom, au profit des ID d'article, pourquoi pas. Oncroisent souvent des url de la forme
    .../a-8/article/monartcile
    
    D'autre part pour ce qui est le la rubrique de l'article, a aprtir du moment ou on exploite l'id, on peut mettre ce que l'on veut derriere
    .../a-8/Marub/masousrub/monarticle
    
    Dans cette solution, il suffit juste de recuperer le a-8, ou le c-1 ou le s-9
  • orx57orx57 Member
    décembre 2009 modifié
    Hello,

    Ce que j'attends d'un CMS concernant les SEO friendly URLs, c'est de ne pas voir de "?id=" ou dérivés pour les raisons pré-citées, et de permettre via l'interface et/ou mod_rewrite, de gérer le format des URLs dans cet esprit :

    Avec une gestion des duplicata de nom de page:
    * http://exemple.fr/nom-page (sans extension)
    * http://exemple.fr/nom-page.php (ou .html ou .cgi ou .jsp ou .aspx ou .cfm ou .toutcequevousvoulez)
    * http://exemple.fr/nom-page.php (créé manuellement)
    * http://exemple.fr/nom_page.php (automatiquement créés à partir du titre de la page)

    Sans gestion des duplicata de nom de page :
    * http://exemple.fr/certains/sous-dossier/nom-page.php (utilisant par exemple les rubriques pour l'arborescence et permettant l'utilisation de nom de page dupliqué)

    Ou toute combinaison de ce qui précède.

    Tout ce qui touche au fonctionnement du moteur (static, article, ou l'id) devrait être transparent. Cela n'a rien de parlant pour un utilisateur, ne serait-ce que pour retenir une URL intéressante...

    Pour l'anecdote : j'ai migré vers PluXml un site ne contenant que des pages statiques et j'ai du me créer un .htaccess pas très jolie et très statique aussi :

    * URL : http://keratine.fr/
    * .htaccess :
    [...]
    RewriteRule ^(contact).php$ ?static2/$1 [L,QSA]
    RewriteRule ^(tarifs).php$ ?static3/$1 [L,QSA]
    RewriteRule ^(perruques).php$ ?static4/$1 [L,QSA]
    RewriteRule ^(trame).php$ ?static5/$1 [L,QSA]
    RewriteRule ^(recrutement).php$ ?static6/$1 [L,QSA]
    [...]

    @+
  • bonjour,

    une solution intermédiaire pour la gestion de réécriture des url des pages statique , serait d'automatiser cette réécriture a la création de la page .... editer donc le fichier .htaccess du même coup sans avoir a le faire 'a mano'.

    Cette réécriture est transposable au rubrique et pages article .

    La gestions des "doublons" peut-etre alors gérer a ce niveau par une alerte ou l'ajout d'un préfixe simple devant le nom de page dans l'URL réécrite.

    Cette piste me semble beaucoup plus intéressante que de remanier et complexifier le code de Pluxml au risque d'en faire une usine a gaz mal foutue :) .

    Un plugin ferait l'affaire avec la possibilité d'activer ou nom l'URL rewriting a l'installation ou via une page adjacente a l'administration.

    reste malgré tout le problème de la gestion des url relative interne (images et documents par exemples)

    GC


    Cordialement,
    gcyrillus

    Mon site PluXml: https://re7net.com | Plugins: https://ressources.pluxopolis.net/banque-plugins/index.php?all_versions | demos sur free http://gcyrillus.free.fr/new | Thèmes: tester et télécharger @ https://pluxthemes.com
    Indiquez [RESOLU] dans le titre de votre question une fois le soucis réglè, Merci

Connectez-vous ou Inscrivez-vous pour répondre.