variable showposts (Créer un compte)

  • Statut : non résolu
  • Ce sujet contient 5 réponses, 4 participants et a été mis à jour pour la dernière fois par Anonyme, le il y a 14 années et 2 mois.
6 sujets de 1 à 6 (sur un total de 6)
  • Auteur
    Messages
  • #448202
    o
    Membre
    Initié WordPress
    2 contributions

    Bonjour,
    Souhaitant utiliser l’extension wp2pdf, j’avais bien envie de pouvoir choisir combien de posts seraient édités dans mon pdf.
    La doc de wp2pdf préconise de passer par url la variable showposts, sous la forme wp2pdf.php?showposts=n (pour n= nombre de posts à éditer).
    Or pas moyen que ça marche, la variable showposts ne passe pas, n’est pas prise en compte (WP 2.0.3).
    En allant gratter le code, j’ai modifié le fichier classes.php, class WP de la manière suivante :

    var $public_query_vars = array(‘m’, ‘p’, ‘posts’, ‘w’, ‘cat’, ‘withcomments’, ‘s’, ‘search’, ‘exact’, ‘sentence’, ‘debug’, ‘calendar’, ‘page’, ‘paged’, ‘more’, ‘tb’, ‘pb’, ‘author’, ‘order’, ‘orderby’, ‘year’, ‘monthnum’, ‘day’, ‘hour’, ‘minute’, ‘second’, ‘name’, ‘category_name’, ‘feed’, ‘author_name’, ‘static’, ‘pagename’, ‘page_id’, ‘error’, ‘comments_popup’, ‘attachment’, ‘attachment_id’, ‘subpost’, ‘subpost_id’, ‘showposts’, ‘preview’);
    
    	var $private_query_vars = array(‘posts_per_page’, ‘posts_per_archive_page’, ‘what_to_show’, ‘nopaging’, ‘show_post_type’);

    J’ai transféré l’élément du tableau showposts de la variable $private_query_vars à $public_query_vars

    Et le tout marche très bien.

    Mais, il y a toujours un mais, si cet élément a été placé ici et pas là, il doit bien y avoir une raison.
    Quelqu’un connaitrait il les incidences d’une telle modification (à part que l’on touche au noyau !)

    Merci

    #577289
    AmO
    Participant
    Maître WordPress
    4451 contributions

    Ca veut dire que cet “élément” pourra être accessible publiquement alors que ca n’est pas le cas pour les éléments de private…

    Je pense pas que ca pose de problème de sécurité… ni de fonctionnalité… à tester ^^

    #577290
    z720
    Membre
    Maître WordPress
    579 contributions

    Ces 2 tableaux permettent à WordPress de nettoyer les requêtes par sécurité :
    si une variable n’est pas déclarée comme public, elle ne peut pas venir de l’extérieur (en paramètre dans l’URL) elle est donc “effacée” à l’initialisation de WP

    ça permet de s’assurer que les valeurs que l’on manipule en interne ne sont “hackée” depuis l’extérieur, en bref ça réduit les failles de sécurité.

    Par contre je pense que ces tableaux sont modifiables via plugin… Est-ce wp2pdf est bien à jour par rapport à la dernière version de WP ?

    #577291
    Anonyme
    Inactif
    Initié WordPress
    19 contributions

    wp2pdf a l’air un peu à l’abandon… et ce n’est pas à proprement parler un plugin au sens strict de WP.
    Au final je pensais partir sur ma modification (le fait que showposts soit public ne doit pas être une faille de sécurité majeure) de classes.php.
    Ceci accompagné d’un plugin dont la finalité aurait été de proposer lorsque l’on parcours les archives un export PDF.
    Je ne suis pas développeur (disons bricoleur !) et la modification envisagée par z720 est, je pense hors de portée pour moi ! Pour le reste, j’espère m’en sortir.
    Sinon, à part ça wp2pdf ne va pas mal.
    Merci

    PS: je m’apperçois que j’ai posté dans la rubrique installatiion et ce n’est peut être pas la mieux appropriée…

    #577292
    Anonyme
    Inactif
    Initié WordPress
    19 contributions

    Merci pour le déplacement, je ferai attention, promis =D

    #577293
    Anonyme
    Inactif
    Initié WordPress
    19 contributions

    Mais bien sûr !!
    quand même, modifier classes.php, c’est pas classe (sans jeu de mots :lol:)
    je suggère l’ajout dans un plugin d’une fonction de ce type (ça tue : 2 lignes !) :
    [c]function add_var($req)
    {
    $req .= ‘&showposts=2’;
    return $req;
    }[/c]

    appelée par :
    [c]add_filter(‘query_string’, ‘add_var’);[/c]

    Allez, j’arrose ça entre moi !
    🍺

6 sujets de 1 à 6 (sur un total de 6)
  • Vous devez être connecté pour répondre à ce sujet.