DISQUS

John-Noone: John Noone » Un petit plugin pour les %category%

  • Rod · 2 years ago
    j'ai installé ... now je vais tenter Identikit :) mais si tu veux faire ZE plugin pour les categories ... arrive à faire en sorte de faire disparaitre %category% quand tu appelles une categorie ... cf ... www.le-hiboo.com/category/photos deviendrait www.le-hiboo.com/photos/ ... mais surtout, que ca marche quand tu fais www.le-hiboo.com/photos/page/2/ ... car c'est a mon avis d'un inesthetisme beurk :) allez ... tentative Identikit !
  • johnnoone · 2 years ago
    j'essaie de bidouiller ceci mais c'est quasiment impossible à le faire légèrement, à moins de transformer ce plugin en usine à gaz :(.

    En effet cette fonctionnalité de Wordpress est assez mal codée. Elle est basée sur des expressions régulières et elle mélange tout les types de liens. On ne sait jamais si elle va tester une catégorie ou un post ou une pièce-jointe... C'est pour ça qu'ils ont été contraint de mettre des mots-clés dans les liens, du type "machin-chose/".

    Idéalement, il faut revoir le code source de cette fonctionnalité pour qu'il teste les permaliens dans un ordre précis que l'on peut spécifier. Et là ça répondra à toutes les attentes :)
  • johnnoone · 2 years ago
    Je reviens sur ce que j'ai pu écrire.

    J'ai réussi à écrire un truc sans trop de bidouilles.
  • Rod · 2 years ago
    a noter sur mon WP en DEV (WP 2.1.2 et PHP5) j'ai tjs /category/ dans mes liens ... et ce avec le plugin activé :)
  • johnnoone · 2 years ago
    Même en rechargeant les permalinks ?
  • Rod · 2 years ago
    Bien sur :) sinon c'est pas fun :) mais t'as une nouvelle beta du 8 avril ?
  • johnnoone · 2 years ago
    ouaip, il faut télécharger la nouvelle beta qui permet de faire tout ça.

    sinon la prochaine gèrera les redirections 301 (pour google). et puis je pense qu'elle sera assez mature pour une version finale.
  • Rod · 2 years ago
    bon j'abandonne avec ton plugin, le nouveau bug est fantastique : il me fait apparaitre un joli truc de debug avec pleins de lignes de code :)
  • Rod · 2 years ago
    PS : en revanche, le /category/ disparait ... mais a la place g un enorme debug de style

    WP Object
    (
    [public_query_vars] => Array
    (
    [0] => m
    [1] => p
    [2] => posts
    [3] => w
    [4] => cat
    [5] => withcomments
    [6] => withoutcomments
    [7] => s
    [8] => search
    [9] => exact
    [10] => sentence
    [11] => debug
    [12] => calendar
    [13] => page
    [14] => paged
    [15] => more
    [16] => tb
    [17] => pb
    [18] => author
    [19] => order
    [20] => orderby
    [21] => year
    [22] => monthnum
    [23] => day
    [24] => hour
    [25] => minute
    [26] => second
    [27] => name
    [28] => category_name
    [29] => feed
    [30] => author_name
    [31] => static
    [32] => pagename
    [33] => page_id
    [34] => error
    [35] => comments_popup
    [36] => attachment
    [37] => attachment_id
    [38] => subpost
    [39] => subpost_id
    [40] => preview
    [41] => robots
    [42] => request_avatar
    [43] => avatar_type
    [44] => avatar_key
    [45] => avatar_size
    [46] => identikit_css
    [47] => rs_discuss_where
    [48] => rs_discuss_forum
    [49] => rs_discuss_topic
    [50] => rs_discuss_page
    [51] => rs_discuss_post
    [52] => rs_discuss_feed
    [53] => rs_discuss_user
    [54] => rs_discuss_search
    [55] => tag
    [56] => request_avatar
    [57] => avatar_type
    [58] => avatar_key
    [59] => avatar_size
    [60] => identikit_css
    [61] => rs_discuss_where
    [62] => rs_discuss_forum
    [63] => rs_discuss_topic
    [64] => rs_discuss_page
    [65] => rs_discuss_post
    [66] => rs_discuss_feed
    [67] => rs_discuss_user
    [68] => rs_discuss_search
    [69] => tag
    [70] => request_avatar

    .... et les lignes sont nombreuses :)
  • johnnoone · 2 years ago
    T'inkiete c'est juste le debug (pour voir ce qu'il fait).

    j'ai mis une nouvelle version du plugin, amputé de ce debug. Cette version gère les redirections 301. Ainsi toutes les urls du type category/ sont concentrées vers la nouvelle, afin d'augmenter le page rank dans Google.
  • Rod · 2 years ago
    nan mais ca marche nickel !!! du coup je crois meme ke je vais tout de suite mettre le plugin sur mon blog en prod :)
  • Rod · 2 years ago
    bon je me suis avancé trop vite ... quand c'est /page/2/ ... ou + d'ailleurs, 404
  • johnnoone · 2 years ago
    c'est surement une question d'affinage du truc, mais j'y suis presque.
    peux-tu me donner la structure des urls qui ne fonctionnent pas ?
  • Rod · 2 years ago
    ben kan c

    domaine.com/nom-categorie/page/numero-de-page/
  • johnnoone · 2 years ago
    à la ligne 156 tu dois avoir
    <coolcode lang="php" linenum="false">if($vars['page']) {
    $vars['paged'] = preg_replace('`[^0-9]`','', $vars['page']);
    }</coolcode>

    Peux-tu remplacer ce code par celui-là ?
    <coolcode lang="php" linenum="false">if($vars['page'] && empty($vars['name']) ) {
    $vars['paged'] = preg_replace('`[^0-9]`','', $vars['page']);
    unset($vars['page']);
    }</coolcode>

    Si ça ne fonctionne pas, c'est qu'une expression régulière courcircuite le plugin. je vais faire appel au KGB pour que le plugin fonctionne au pas.
  • johnnoone · 2 years ago
    Bon, j'ai remis une nouvelle version en ligne.

    Est-ce que celle-là fonctionne chez toi ?
  • Rod · 2 years ago
    j'abandonne :) non seulement ca ne fonctionne pas en /page/2 ... mais en + la page 1 se transforme en url//category/

    avec un double slash donc :)
  • johnnoone · 2 years ago
    Putain mec, à force de m'arracher les cheveux je n'en aurait bientôt plus sur le caillou !
    Va falloir qu'on se fasse une soirée des bugs et des pizzas.
  • Rod · 2 years ago
    J'ai desactivé le plugin : il rajoutait pas moins de 50 requetes supplementaires lorsque j'affichais mes categories sur une page :) (oui oui, 50 !)
  • Fleuretta · 2 years ago
    Bonjour,

    J'ai ajouté ton plugin et le seul bug que j'ai c'est le double // qui s'affiche.

    As-tu trouvé moyen de corriger ce petit bug?


    Merci