| |
| |
|
|
|
|
| |
|
| |
|
| :: |
| Auteur |
Message |
gowap phpBB SEO Team


Inscrit le: 07 Mai 2006 Messages: 1005
|
Posté le: Sam Sep 30, 2006 4:13 pm Sujet du message: PhpBB et pagination |
|
|
Les liens naturels de phpBB pour un sujet avec plusieurs pages sont du style :
viewtopic.php?t=xxx&start=yy
avec xxx le numero du topic et yy un multiple du nombre de messages par page.
Par defaut phpBB est configuré sur 20 messages par page.
Pour la premiere page d'un sujet paginé, il n'y a pas d'argument &start=
2eme page : &start=20
3eme page : &start=40
Jusque la...
Je viens de découvrir avec effroi que si on change la valeur de start= et qu'on met un nombre qui n'est pas un multiple du nombre de messages par page, par exemple &start=25 (quand le defaut est 20), phpBB va alors générer une page ou le premier message affiché sera celui donné en paramètre+1, soit le 26eme message du topic.
Je suis surpris, parce que je pensais intuitivement (naivement ?) qu'au lieu de faire cette gymnastique, avec start=25 phpBB allait m'afficher la page du multiple naturel (en l'occurence start=20) et se positionner eventuellement sur le topic précis. Comme ca se passe quand on fait un viewtopic.php?p=zzzz.
Je n'imaginais pas qu'il allait générer une page distincte de celles qu'on obtient si on suit les liens qui sont construits par le forum.
A ce compte la, si on transpose cette logique pour viewtopic.php?p=zzzz, au lieu de procéder comme il le fait, il devrait générer une page où le numero de post donné en paramètre serait le premier post de la page.
Pour en revenir a la pagination, quelqu'un peut donc artificiellement créer quantité de "doublons" tout simplement en incrémentant l'argument &start=  |
_________________ Gravure-News : la communauté francophone de la gravure de CD/DVD et son forum d'entraide. |
|
| Revenir en haut de page |
|
 |
|
 |
dcz Administrateur - Site Admin

Inscrit le: 28 Avr 2006 Messages: 14327
|
Posté le: Lun Oct 02, 2006 10:09 am Sujet du message: Re: PhpBB et pagination |
|
|
En fait, phpBB calcul la page exacte ou se trouve un post quand on lui demande une URL de message, ce qui nous vaut une requête un bon poil plus lourde dans viewtopic.php.
Tout se passe après ce commentaire dans viewtopic.php :
| Code: | // This rather complex gaggle of code handles querying for topics but
// also allows for direct linking to a post (and the calculation of which
// page the post is on and the correct display of viewtopic) |
Ce calcul n'est pas effectué sur des URL de sujets, paginées ou non, dans ce cas la variable start est bêtement envoyée dans la requête :
| Code: | | LIMIT $start, ".$board_config['posts_per_page']; |
du coup tu te retrouve effectivement avec une pagination bizarre, et oui cela peut entraîner des duplicates.
Je regarderais ce point pour le Zéro duplicate final, il doit bien y avoir moyen de n'accepter que des multiples de $board_config['posts_per_page'] ce qui réglerait le problème.
++ |
_________________ Useful links :
SEO Forum || SEO Directory || SEO phpBB || SEO phpBB3 || Search
____________________
Liens Utiles :
Forum référencement || Annuaire référencement || Référencement phpBB || Référencement phpBB3 || Recherche |
|
| Revenir en haut de page |
|
 |
|
| Navigation |
Autres sujets de discussion |
|
|
|
|
|
|
|
| |
|
|
|
|
| |
|
|
|
|
| |