[spip-dev] Re[2]: [Spip] Indexation site dynamic en PHP

Bonsoir,

Ca fonctionne en safe mode a condition d avoir le site a la racine
et de faire une indexation absolue par rapport a la racine et pas
par rapport a la page courant. D'ou l'interet de la reecriture d
URL.

Qu'appelles-tu "indexation" ???

Le problème (peut-être un bug de PHP) est que le script se "croit"
dans un sous-répertoire alors qu'il ne l'est pas ...

-Nicolas

PS: Il faut mieux rester sur la liste spip-dev, ça concerne tout le
    monde ...

  Qu'appelles-tu "indexation" ???

Indexation c est pour moi le fait de passer un robot sur le site qui=20
est ainsi analyse et referencer (si c est l objectif du robot).

Ainsi quand tu as des urls de la forme=20
http://mon.site.web/mapage.php?var=3Dtoto
et=20
http://mon.site.web/mapage.php?var=3Dtata

Le moteur n est capable de voir qu une et une seule page : mapage.php

Avec la methode de reecriture d url on peut masquer le mecanisme d=20
appel php, et creer une "url virtuelle", il faut toutefois avoir la=20
maitrise de la configuration du serveur ce qui fait que ca ne va pas=20
fonctionner chez un hebergeur non sympathique...

et dans le cas precedent on appelera par exemple=20

http://mon.site.web/tata et=20
http://mon.site.web/toto

Les deux URLS etant differentes elles pourront etre indexes avec leurs=20
contenus et l utilisateur n aura pas la mauvaise idee de mettre des=20
choses dans l url pour voir plus loin.

  Le probl=E8me (peut-=EAtre un bug de PHP) est que le script se "croit=

"

  dans un sous-r=E9pertoire alors qu'il ne l'est pas ...

La limitation vient du fait que l analyse de l URL est faite par=20
Apache, il faut donc lui donner les informations completes sur l URL=20
sinon il ne sait pas traiter de deux facon les liens : c est pour cela=20
qu il faut etre sur un hote auquel on a acces a la racine / de celui ci=20
et qu il faut ensuite faire des codages par rapport a cette racine en=20
tenant compte de la structure logique et pas de la structure physique=20
du site.

A+
stc

--=20
+-[Sebastien 'Tito' Cazajous -> sebastien.cazajous@eikonex.net]

       - Developpeur Objet - Use Debian GNU/Linux -

+--------[eikonex ) Logiciels Libres -> http://www.eikonex.net]

Salut,

Modifs dans la beta 14 sur les fichiers:

/ecrire/inc.php3 (le plus important)
/ecrire/index.php3
/ecrire/mots_edit.php3
/ecrire/auteurs_edit.php3
/ecrire/articles_class.php3

Il s'agit d'une modification de l'affichage des listes d'articles:
d=E9sormais, pour chaque liste, l'int=E9gralit=E9 des articles concern=E9s
est accessible (et pas seulement les 10 plus r=E9cents), via une petite
liste de la forme "[1-10] [11-20]..." (comme pour les br=E8ves).

De cette fa=E7on, on assume mieux les changements d'=E9chelle (par
exemple quand on a 200 articles dans la m=EAme rubrique). De m=EAme, un
r=E9dacteur peut acc=E8der =E0 tous ses articles sur la page d'index ou sur
la page d'information sur le r=E9dacteur.

La modif concerne la fonction afficher_articles dans inc.php3. Dans
les autres fichiers, il s'agit simplement de faire dispara=EEtre les
"LIMIT 0,10" dans les requ=EAtes mySQL, puisque c'est d=E9sormais
afficher_articles qui s'en occupe.

(J'ai essay=E9 de programmer proprement, mais y'a deux "global" dont je
ne suis pas trop s=FBr...).

Une telle fonctionnalit=E9 est d'ailleurs n=E9cessaire pour l'affichage
de "messagerie.php3", afin de g=E9rer correctement la liste de "tous
les messages".

ARNO*

Pleeeeease, consulter le todo de temps en temps :

"
N'importe quand

- am=E9liorer espace priv=E9 : factorisation et g=E9n=E9ricit=E9 des foncti=

ons

d'affichage (afficher_liste(), etc.). Int=E9gration automatique et
personnalisable
d'affichage par parties ([0-10], [10-20], etc.).
"

Donc, en attendant que ce soit fait de fa=E7on propre et
g=E9n=E9rique, enlever le hack ;))

Non. C'est propre (quelques lignes ajout=E9es =E0 une seule fonction dans
un seul fichier), =E7a concerne d'un seul coup toutes les listes
utilisant cette fonction (c'est-=E0-dire toutes les listes d'articles),
et surtout =E7a apporte r=E9ellement quelque chose =E0 l'interface (acc=E8s
"optionnel" =E0 des articles qui =E9taient quasiment impossibles =E0
retrouver rapidement auparavant, et navigation tr=E8s acc=E9l=E9r=E9e sur le=
s
rubriques contenant beaucoup d'articles). Y'a aucune raison de
revenir en arri=E8re.

ARNO*

ARNO* wrote:

Non. C'est propre (quelques lignes ajoutées à une seule fonction dans
un seul fichier), ça concerne d'un seul coup toutes les listes
utilisant cette fonction (c'est-à-dire toutes les listes d'articles),
et surtout ça apporte réellement quelque chose à l'interface (accès
"optionnel" à des articles qui étaient quasiment impossibles à
retrouver rapidement auparavant, et navigation très accélérée sur les
rubriques contenant beaucoup d'articles). Y'a aucune raison de
revenir en arrière.

Moui, à part que tu as supprimé le LIMIT et que tu fais le classement
à la main en PHP. Du coup, s'il y a 200 articles à charger, ils sont
tous récupérés depuis MySQL et discriminés ensuite un par un dans le
code SPIP.

A part ça, mon idée est de faire des routines génériques indépendantes
du type d'objet :wink:

a+