Wikini

DevActionsEntetePiedDePageEtLinkTracking

PagePrincipale :: DerniersChangements :: DerniersCommentaires :: ParametresUtilisateur :: Vous êtes ec2-44-220-251-236.compute-1.amazonaws.com

Gestion du linktracking par rapport aux actions

Jusque dans la version 0.4.3 de WikiNi, l'utilisation des méthodes start- et stoplinktracking de la ClasseWiki était totalement sans effet (voir RapportsDeBogues). Ceci avait pour conséquence que les liens générés par les actions étaient trackés comme n'importe quel autre lien.
Normalement, ce n'est pas le cas, car la méthode Action de la classe Wiki nécessite (peut-être pas dans les anciennes versions de WikiNi...) un paramètre optionnel $forcelinktracking (je trouve que le nom est mal choisi mais bon...) qui, s'il n'est pas spécifié, doit normalement provoquer l'arrêt du tracking des liens. Or (à première vue, dans la classe wiki et dans le formatter wakka) il n'est jamais spécifié ! Donc toutes les actions, ainsi que les entêtes et les pieds de pages (qui sont aussi des actions) ne devraient normalement pas générer de liens trackés. Cependant, actuellement, ils le sont tout de même...
Ceci devrait, je l'espère, être corrigé dans la prochaine version de WikiNi (suivez le WikiNiChangeLog050)

Cette page va tenter de détailler les effets que cela provoquait, et les choses à modifier (ou déjà modifiées)

Effets sur l'entête et le pied de page

Tous les liens se trouvant dans l'entête et le pied de page étaient trackés sur toutes les pages (voir par exemple les BacklinksPagePrincipale), ceci est particulièrement lourd: un enrégistrement supplémentaire dans la base de données par page et par lien se trouvant dans l'entête ou le pied de page. Concrètement, pour un WikiNi de 1000 pages ayant conservé les options par défaut, cela fait 4000 enrégistrements inutiles: la PagePrincipale ainsi que les DerniersChangements, les DerniersCommentaires et les ParametresUtilisateur se retrouvent en effet tous les 4 liées à chacune des 1000 pages...

D'un autre côté, cela avait aussi son avantage:
Ces deux avantages permettaient à n'importe qui de lister facilement toutes les pages auxquelles il a participé (à condition qu'il soit l'auteur de la dernière révision s'il n'en est pas le propriétaire, mais en général on signe de toute façon ses modifications...)

Voici quelques détails sur les modifications (de fonctionnement) que j'ai faites dans le handler edit (voir WikiNiChangeLog050) qui est en fait le seul "responsable" du linktracking:

Les autres modifications sont assez mineures, car même si le diff montre que tout a l'air d'avoir changé, j'ai en fait surtout déplacé des bouts de code sans vraiment les modifier...

Effets sur les actions en général

L'effet actuel est que tous les liens générés par des actions via la méthode Format(), ainsi que ceux générés via les méthodes Link() et ComposeLinkToPage() sans fournir le 4e argument sont d'office trackés...

Suggestions pour le développement à venir:

Il n'y a pas de commentaire sur cette page. [Afficher commentaires/formulaire]