{"id":230936,"date":"2022-12-12T13:09:00","date_gmt":"2022-12-12T10:09:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=230936"},"modified":"2022-12-07T11:13:04","modified_gmt":"2022-12-07T08:13:04","slug":"astuce-rapide-desinfectez-les-donnees-de-publication-dans-wordpress","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/fr\/astuce-rapide-desinfectez-les-donnees-de-publication-dans-wordpress\/","title":{"rendered":"Astuce rapide : D\u00e9sinfectez les donn\u00e9es de publication dans WordPress"},"content":{"rendered":"\n<p>Plus je commence \u00e0 essayer d&rsquo;utiliser les normes et outils de codage PSR-2 tels que <a href=\"https:\/\/tommcfarlin.com\/the-independent-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GrumPHP<\/a> (et ceux qui lui sont li\u00e9s), plus je trouve que la qualit\u00e9 du code que j&rsquo;\u00e9cris peut \u00eatre consid\u00e9rablement am\u00e9lior\u00e9e de mani\u00e8re mineure.<\/p>\n<p>Et je ne veux pas para\u00eetre contradictoire: je veux dire, l&rsquo;id\u00e9e d&rsquo;avoir quelque chose d&rsquo;am\u00e9lior\u00e9 \u00abde mani\u00e8re significative\u00bb d&rsquo;une mani\u00e8re \u00abmineure\u00bb ne tient pas vraiment, n&rsquo;est-ce pas ?<\/p>\n<p>Mais \u00e9coutez-moi.<\/p>\n<p>Imaginez que vous \u00eates capable d&rsquo;\u00e9crire du code propre, lisible et maintenable en utilisant des normes de codage qui ne sont pas seulement modernes, mais int\u00e9gr\u00e9es \u00e0 PHP, qui fonctionnent bien avec WordPress, et qui sont plus lisibles que certaines des autres fa\u00e7ons dont nous avons pu le faire. le pass\u00e9 ou lors de l&rsquo;utilisation d&rsquo;autres outils pour les normes de codage.<\/p>\n<p>Ne seriez-vous pas int\u00e9ress\u00e9 ?<\/p>\n<h2>D\u00e9sinfecter les donn\u00e9es de publication<\/h2>\n<p>Prenez, par exemple, l&rsquo;id\u00e9e de la n\u00e9cessit\u00e9 de nettoyer les donn\u00e9es de publication dans WordPress. C&rsquo;est-\u00e0-dire que les informations sont envoy\u00e9es au serveur via une requ\u00eate POST, sont contenues dans le superglobal $_POST et doivent \u00eatre nettoy\u00e9es avant d&rsquo;y travailler.<\/p>\n<p>Bien s\u00fbr, WordPress fournit quelques fonctions d&rsquo;assistance <strong><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/sanitize_text_field\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">pour cela<\/a><\/strong> &#8211; et elles sont utiles &#8211; mais PHP en <strong><a href=\"https:\/\/php.net\/manual\/en\/function.filter-input.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">fournit<\/a><\/strong> \u00e9galement.<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-161967-61e72e3eee165.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-161967-61e72e3eee165.png\" alt=\"Astuce rapide : D\u00e9sinfectez les donn\u00e9es de publication dans WordPress\" ><\/a><\/p>\n<p>Je vais fournir un aper\u00e7u complet des informations ci-dessous dans une fonction que vous pouvez r\u00e9utiliser dans votre code. Mais d&rsquo;abord, notez que je vais \u00eatre agressif. Vous n&rsquo;aurez peut-\u00eatre pas besoin de tout ce que je vais vous montrer.<\/p>\n<p>Autrement dit, le code que vous allez voir fera ce qui suit\u00a0:<\/p>\n<ul>\n<li>r\u00e9cup\u00e8re une variable pour le <a href=\"https:\/\/php.net\/manual\/en\/language.variables.superglobals.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">superglobal $_POST,<\/a><\/li>\n<li>v\u00e9rifie l&rsquo;encodage invalide,<\/li>\n<li>encode diverses entit\u00e9s, supprime toutes les balises, supprime les sauts de ligne, les tabulations, les espaces blancs, etc.,<\/li>\n<li>cite une cha\u00eene entre guillemets,<\/li>\n<li>supprime les balises HTML et les balises PHP d&rsquo;une cha\u00eene<\/li>\n<\/ul>\n<p>Comme je l&rsquo;ai dit, tout cela n&rsquo;est peut-\u00eatre pas n\u00e9cessaire, et il existe d&rsquo;autres fa\u00e7ons de g\u00e9rer une partie de cela en fonction de la fa\u00e7on dont vous souhaitez g\u00e9rer vos donn\u00e9es (par exemple, voir <a href=\"https:\/\/codex.wordpress.org\/Function_Reference\/wp_kses\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">wp_kses<\/a> ).<\/p>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-161967-61e72e434913b.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-161967-61e72e434913b.png\" alt=\"Astuce rapide : D\u00e9sinfectez les donn\u00e9es de publication dans WordPress\" ><\/a><\/p>\n<p>Il y a d&rsquo;autres moments, cependant, o\u00f9 vous pouvez avoir une page de param\u00e8tres que vous souhaitez g\u00e9rer avant d&rsquo;\u00e9crire agressivement des donn\u00e9es dans la base de donn\u00e9es.<\/p>\n<pre><code>&lt;?php\npublic function sanitize(string $data): string\n{\n    return strip_tags(\n        stripslashes(\n            sanitize_text_field(\n                filter_input(INPUT_POST, $data))) );\n}<\/code><\/pre>\n<p><strong><a href=\"https:\/\/gist.github.com\/tommcfarlin\/77f82db963da726646307a8459dc2500#file-00-sanitize-php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Dans le code ci-dessus<\/a><\/strong>, la fonction est utilis\u00e9e en transmettant des informations trouv\u00e9es dans le superglobal $_POST. Il est ensuite nettoy\u00e9 de mani\u00e8re agressive en utilisant la strat\u00e9gie ci-dessus et renvoy\u00e9 aussi d\u00e9sinfect\u00e9 que possible.<\/p>\n<p>Comme je l&rsquo;ai dit, cela peut \u00eatre modifi\u00e9 pour s&rsquo;adapter \u00e0 l&rsquo;utilisation dont vous avez besoin, mais si vous recherchez ce qui pourrait \u00eatre l&rsquo;un des moyens les plus simples et les plus agressifs de nettoyer les entr\u00e9es de l&rsquo;utilisateur, cette fonction peut s&rsquo;av\u00e9rer utile dans vos efforts.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Source d&rsquo;enregistrement:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Si vous recherchez ce qui pourrait \u00eatre l&rsquo;un des moyens les plus agressifs de nettoyer les donn\u00e9es de publication de l&rsquo;utilisateur, cette fonction peut s&rsquo;av\u00e9rer utile<\/p>\n","protected":false},"author":1,"featured_media":236064,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[893,717,801,862],"tags":[1167],"class_list":["post-230936","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-code-2","category-developpeur","category-php-3","category-wordpress-3","tag-affiai-fr"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/230936","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/comments?post=230936"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/posts\/230936\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media\/236064"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/media?parent=230936"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/categories?post=230936"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/fr\/wp-json\/wp\/v2\/tags?post=230936"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}