{"id":231258,"date":"2022-12-12T13:43:00","date_gmt":"2022-12-12T10:43:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=231258"},"modified":"2022-12-07T11:13:05","modified_gmt":"2022-12-07T08:13:05","slug":"suggerimento-rapido-disinfetta-i-dati-dei-post-in-wordpress","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/it\/suggerimento-rapido-disinfetta-i-dati-dei-post-in-wordpress\/","title":{"rendered":"Suggerimento rapido: disinfetta i dati dei post in WordPress"},"content":{"rendered":"\n<p>Pi\u00f9 comincio a provare a utilizzare standard di codifica PSR-2 e strumenti come <a href=\"https:\/\/tommcfarlin.com\/the-independent-wordpress-developer\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">GrumPHP<\/a> (e quelli ad esso correlati), pi\u00f9 trovo che la qualit\u00e0 del codice che scrivo possa essere notevolmente migliorata in modi minori.<\/p>\n<p>E non voglio sembrare contraddittorio: voglio dire, l&#8217;idea di avere qualcosa di &quot;significativamente&quot; migliorato in un modo &quot;minore&quot; non \u00e8 esattamente jive, vero?<\/p>\n<p>Ma ascoltami.<\/p>\n<p>Immagina di essere in grado di scrivere codice pulito, leggibile e manutenibile utilizzando standard di codifica che non sono solo moderni, ma integrati in PHP, giocare bene con WordPress e che sia pi\u00f9 leggibile rispetto ad altri modi in cui potremmo averlo fatto in passato o quando si utilizzano altri strumenti per la codifica degli standard.<\/p>\n<p>Non saresti interessato?<\/p>\n<h2>Disinfetta i dati dei post<\/h2>\n<p>Prendi, ad esempio, l&#8217;idea della necessit\u00e0 di sanificare i dati dei post in WordPress. Cio\u00e8, le informazioni vengono inviate al server tramite una richiesta POST, sono contenute all&#8217;interno del superglobale $_POST e devono essere sanificate prima di eseguire qualsiasi lavoro su di esso.<\/p>\n<p>Certo, WordPress fornisce alcune funzioni di supporto <strong><a href=\"https:\/\/developer.wordpress.org\/reference\/functions\/sanitize_text_field\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">per questo<\/a><\/strong> \u2013 e sono utili \u2013 ma PHP <strong><a href=\"https:\/\/php.net\/manual\/en\/function.filter-input.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">fornisce<\/a><\/strong> anche alcune .<\/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=\"Suggerimento rapido: disinfetta i dati dei post in WordPress\" ><\/a><\/p>\n<p>Fornir\u00f2 un quadro completo delle informazioni di seguito in una funzione che puoi riutilizzare nel tuo codice. Ma prima, nota che sar\u00f2 aggressivo. Potresti non aver bisogno di tutto quello che ti mostrer\u00f2.<\/p>\n<p>Cio\u00e8, il codice che vedrai far\u00e0 quanto segue:<\/p>\n<ul>\n<li>recupera una variabile per il <a href=\"https:\/\/php.net\/manual\/en\/language.variables.superglobals.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">superglobale $_POST,<\/a><\/li>\n<li>controlla la codifica non valida,<\/li>\n<li>codifica varie entit\u00e0, rimuove tutti i tag, rimuove interruzioni di riga, tabulazioni, spazi bianchi e altro,<\/li>\n<li>virgolette una stringa tra virgolette,<\/li>\n<li>rimuove i tag HTML e i tag PHP da una stringa<\/li>\n<\/ul>\n<p>Come ho detto, non tutto questo potrebbe essere necessario e ci sono altri modi per gestirne alcuni a seconda di come si desidera gestire i dati (ad esempio, vedere <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=\"Suggerimento rapido: disinfetta i dati dei post in WordPress\" ><\/a><\/p>\n<p>Ci sono altre volte, tuttavia, in cui potresti avere una pagina delle impostazioni che desideri gestire prima di scrivere dati nel database in modo aggressivo.<\/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\">Nel codice sopra<\/a><\/strong>, la funzione viene utilizzata passando le informazioni che si trovano nel $_POST superglobale. Viene quindi pulito in modo aggressivo utilizzando la strategia di cui sopra e restituito il pi\u00f9 igienizzato possibile.<\/p>\n<p>Come ho detto, questo pu\u00f2 essere modificato per adattarsi a qualsiasi uso tu abbia bisogno, ma se stai cercando quello che potrebbe essere uno dei modi pi\u00f9 semplici e aggressivi per disinfettare l&#8217;input dell&#8217;utente, questa funzione potrebbe rivelarsi utile nei tuoi sforzi.<\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/tommcfarlin.com\" class=\"external external_icon\">tommcfarlin.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Se stai cercando quello che potrebbe essere uno dei modi pi\u00f9 aggressivi per sanificare i dati dei post dell&#8217;utente, questa funzione potrebbe rivelarsi 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":[896,804,720,865],"tags":[1168],"class_list":["post-231258","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-codice","category-php-6","category-sviluppatore","category-wordpress-6","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/231258","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/comments?post=231258"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/posts\/231258\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media\/236064"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/media?parent=231258"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/categories?post=231258"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/it\/wp-json\/wp\/v2\/tags?post=231258"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}