La réécriture d'URL l’utilisation conjointe des deux logiciels SPIP et Thélia : Différence entre versions

De TheliaDoc
Aller à : navigation, rechercher
(Résumé automatique : blanchiment)
(Annulation des modifications 1801 par Alainormandie (Discuter | Contributions))
 
Ligne 1 : Ligne 1 :
 +
[[Image:Logo_spip_thelia.png]]
 +
[http://www.spip-contrib.net/Plugin-Thelia le plugin thelia-spip]
  
 +
Ce plugin permet d’activer le moteur de Thélia après celui de SPIP,lors du calcul des pages.
 +
ce qui va vous permettre d’utiliser directement les boucles au format Thélia dans vos squelettes.
 +
 +
Pour spip dans le répertoire '''config''' modifié ou créer le fichier '''mes_options.php'''
 +
 +
'''inséré le code suivant pour activer la réécriture d'URL'''
 +
 +
<pre><?php
 +
 +
$type_urls= 'propres2' ;
 +
 +
?></pre>
 +
 +
'''Le fichier .htacess'''
 +
 +
<pre>Options +FollowSymlinks
 +
RewriteEngine on
 +
 +
###
 +
# THELIA
 +
RewriteRule ^(cheque|adresse|commande|commande_detail|commande_visualiser|compte_modifier
 +
|compte_modifiererr|connexion|creercompte|formulerr|imgpop|livraison_adresse|mdpoublie
 +
|merci|moncompte|nouveau|panier|produit|regret|virement)\.php$ spip.php?page=$1 [QSA,L]
 +
RewriteRule ^(rubrique)\.php$ spip.php?page=$1_thelia [QSA,L]
 +
 +
#RUBRIQUE
 +
##############
 +
 +
RewriteRule  ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_([a-z0-9-]*)_\.html
 +
spip.php?page=rubrique_thelia&id_rubrique=$2  [NC,QSA,L]
 +
RewriteRule  ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_\.html
 +
spip.php?page=rubrique_thelia&id_rubrique=$2  [NC,QSA,L]
 +
RewriteRule  ^([a-z0-9-]*)_([0-9]*)_\.html
 +
spip.php?page=rubrique_thelia&id_rubrique=$2  [NC,QSA,L]
 +
 +
 +
#PRODUIT
 +
#############
 +
RewriteRule  ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_([a-z0-9-]*)__([^.]*)\.html
 +
spip.php?page=produit&ref=$5&id_rubrique=$2  [NC,QSA,L]
 +
RewriteRule  ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)__([^.]*)\.html
 +
spip.php?page=produit&ref=$4&id_rubrique=$2  [NC,QSA,L]
 +
RewriteRule  ^([a-z0-9-]*)_([0-9]*)__([^.]*)\.html
 +
spip.php?page=produit&ref=$3&id_rubrique=$2  [NC,QSA,L]
 +
 +
# FIN THELIA
 +
###
 +
 +
###
 +
# SPIP
 +
# URLs "propres" et "propres2"
 +
# pensez a regler $type_urls='propres' ou 'propres2'
 +
# dans ecrire/mes_options.php
 +
# (fichier associe : ecrire/urls/propres.php)
 +
 +
# Les mots-cles
 +
RewriteRule ^\+-[^/\.]+(-\+)?(\.html)?$ spip.php?page=mot [QSA,E=url_propre:$0,L]
 +
 +
# Les breves
 +
RewriteRule ^\+[^/\.]+\+?(\.html)?$ spip.php?page=breve [QSA,E=url_propre:$0,L]
 +
 +
# Les rubriques
 +
RewriteRule ^-[^/\.]+-?(\.html)?$ spip.php?page=rubrique [QSA,E=url_propre:$0,L]
 +
 +
# les auteurs
 +
RewriteRule ^_[^/\.]+_?(\.html)?$ spip.php?page=auteur [QSA,E=url_propre:$0,L]
 +
 +
# Les sites
 +
RewriteRule ^@[^/\.]+@?(\.html)?$ spip.php?page=site [QSA,E=url_propre:$0,L]
 +
 +
# Les articles (en dernier car expression plus "large")
 +
RewriteRule ^[^/\.]+(\.html)?$ spip.php?page=article [QSA,E=url_propre:$0,L]
 +
 +
# Fin URLs "propres" et "propres2"
 +
# FIN SPIP
 +
###</pre>
 +
 +
'''il faut bien respecter l'ordre dans le fichier .htacess'''
 +
 +
* '''thelia''' en premier
 +
* '''spip''' en deuxième
 +
 +
'''sinon dysfonctionnement'''
 +
 +
=='''Dans les squelettes du plugin spip-thelia'''==
 +
 +
* inc-rubriques.html
 +
* rubrique_thelia.html
 +
* produit.html
 +
 +
remplacer les URL spip vers des rubriques ou des produits
 +
par la balise
 +
 +
<pre>
 +
THELIA-REWRITEURL
 +
</pre>
 +
 +
'''par exemple, dans rubrique_thelia.html ligne 48 et 54 :'''
 +
<pre>
 +
#URL_PAGE{produit,ref=THELIA-REF&id_rubrique=THELIA-RUBRIQUE_ID}
 +
</pre>
 +
 +
* devient :
 +
<pre>
 +
THELIA-REWRITEURL
 +
</pre>
 +
 +
'''par exemple, inc-rubriques.html'''
 +
<pre>
 +
<T_rubriquesthelia>
 +
<ul>
 +
<THELIA_rubriquesthelia type="RUBRIQUE" parent="0">
 +
  <li>
 +
  <a href="THELIA-REWRITEURL">THELIA-TITRE</a>
 +
    <ul>
 +
    <THELIA_sous_rubriques2 type="RUBRIQUE" parent="THELIA-ID">
 +
      <li>
 +
      <a href="THELIA-REWRITEURL">THELIA-TITRE</a>
 +
      </li>
 +
    </THELIA_sous_rubriques>
 +
    </ul>
 +
  </li>
 +
</THELIA_rubriquesthelia>
 +
</ul>
 +
</T_rubriquesthelia>
 +
<//T_rubriquesthelia>
 +
</pre>
 +
 +
=='''les liens à consulter pour le plugin spip-thelia'''==
 +
 +
* [[Installation en local avec WampServer]]
 +
* [[Installation en local avec EasyPhp]]
 +
* [[Les boucles spip et thelia]]
 +
 +
--[[Utilisateur:Alainormandie|alainormandie]] 21 septembre 2008 à 08:19 (CEST)

Version actuelle en date du 8 février 2009 à 13:27

Erreur lors de la création de la miniature : Impossible d'enregistrer la vignette sur la destination

le plugin thelia-spip

Ce plugin permet d’activer le moteur de Thélia après celui de SPIP,lors du calcul des pages. ce qui va vous permettre d’utiliser directement les boucles au format Thélia dans vos squelettes.

Pour spip dans le répertoire config modifié ou créer le fichier mes_options.php

inséré le code suivant pour activer la réécriture d'URL

<?php

$type_urls= 'propres2' ;

?>

Le fichier .htacess

Options +FollowSymlinks
RewriteEngine on

###
# THELIA
RewriteRule ^(cheque|adresse|commande|commande_detail|commande_visualiser|compte_modifier
|compte_modifiererr|connexion|creercompte|formulerr|imgpop|livraison_adresse|mdpoublie
|merci|moncompte|nouveau|panier|produit|regret|virement)\.php$	spip.php?page=$1 [QSA,L]
RewriteRule ^(rubrique)\.php$	spip.php?page=$1_thelia [QSA,L]

#RUBRIQUE
##############

RewriteRule   ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_([a-z0-9-]*)_\.html
spip.php?page=rubrique_thelia&id_rubrique=$2  [NC,QSA,L]
RewriteRule   ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_\.html
spip.php?page=rubrique_thelia&id_rubrique=$2  [NC,QSA,L]
RewriteRule   ^([a-z0-9-]*)_([0-9]*)_\.html
spip.php?page=rubrique_thelia&id_rubrique=$2  [NC,QSA,L]


#PRODUIT
#############
RewriteRule   ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)_([a-z0-9-]*)__([^.]*)\.html
spip.php?page=produit&ref=$5&id_rubrique=$2  [NC,QSA,L]
RewriteRule   ^([a-z0-9-]*)_([0-9]*)_([a-z0-9-]*)__([^.]*)\.html
spip.php?page=produit&ref=$4&id_rubrique=$2  [NC,QSA,L]
RewriteRule   ^([a-z0-9-]*)_([0-9]*)__([^.]*)\.html
spip.php?page=produit&ref=$3&id_rubrique=$2  [NC,QSA,L]

# FIN THELIA
###

###
# SPIP
# URLs "propres" et "propres2"
# pensez a regler $type_urls='propres' ou 'propres2'
# dans ecrire/mes_options.php
# (fichier associe : ecrire/urls/propres.php)

# Les mots-cles
RewriteRule ^\+-[^/\.]+(-\+)?(\.html)?$	spip.php?page=mot [QSA,E=url_propre:$0,L]

# Les breves
RewriteRule ^\+[^/\.]+\+?(\.html)?$ 	spip.php?page=breve [QSA,E=url_propre:$0,L]

# Les rubriques
RewriteRule ^-[^/\.]+-?(\.html)?$	spip.php?page=rubrique [QSA,E=url_propre:$0,L]

# les auteurs
RewriteRule ^_[^/\.]+_?(\.html)?$	spip.php?page=auteur [QSA,E=url_propre:$0,L]

# Les sites
RewriteRule ^@[^/\.]+@?(\.html)?$	spip.php?page=site [QSA,E=url_propre:$0,L]

# Les articles (en dernier car expression plus "large")
RewriteRule ^[^/\.]+(\.html)?$		spip.php?page=article [QSA,E=url_propre:$0,L]

# Fin URLs "propres" et "propres2"
# FIN SPIP
###

il faut bien respecter l'ordre dans le fichier .htacess

  • thelia en premier
  • spip en deuxième

sinon dysfonctionnement

Dans les squelettes du plugin spip-thelia

  • inc-rubriques.html
  • rubrique_thelia.html
  • produit.html

remplacer les URL spip vers des rubriques ou des produits par la balise

THELIA-REWRITEURL

par exemple, dans rubrique_thelia.html ligne 48 et 54 :

#URL_PAGE{produit,ref=THELIA-REF&id_rubrique=THELIA-RUBRIQUE_ID}
  • devient :
THELIA-REWRITEURL

par exemple, inc-rubriques.html

<T_rubriquesthelia> 
<ul>
 <THELIA_rubriquesthelia type="RUBRIQUE" parent="0">
  <li>
   <a href="THELIA-REWRITEURL">THELIA-TITRE</a>
    <ul>
     <THELIA_sous_rubriques2 type="RUBRIQUE" parent="THELIA-ID">
      <li>
       <a href="THELIA-REWRITEURL">THELIA-TITRE</a>
      </li>
    </THELIA_sous_rubriques>
    </ul>
   </li>
 </THELIA_rubriquesthelia>
</ul>
</T_rubriquesthelia>
<//T_rubriquesthelia>

les liens à consulter pour le plugin spip-thelia

--alainormandie 21 septembre 2008 à 08:19 (CEST)