{"id":4528,"date":"2022-04-11T10:00:36","date_gmt":"2022-04-11T08:00:36","guid":{"rendered":"https:\/\/www.eugigufo.net\/it\/?page_id=4528"},"modified":"2024-10-01T13:58:27","modified_gmt":"2024-10-01T11:58:27","slug":"paragrafo31","status":"publish","type":"page","link":"https:\/\/eugigufo.net\/it\/inerario\/paragrafo31\/","title":{"rendered":"\u00a7\u00a031. La\u00a0pagina genitore stabilita per default su\u00a0WordPress"},"content":{"rendered":"<p>Poniamoci una semplice domanda: &egrave;&nbsp;possibile fare in&nbsp;modo che tutte le&nbsp;nuove pagine che andiamo a&nbsp;creare su&nbsp;un&nbsp;sito WordPress abbiano una pagina-genitore prestabilita? Ovviamente intendo una&nbsp;pagina diversa dalla index&#8230; Una cosa del genere potrebbe essere necessaria per una molteplicit&agrave; di&nbsp;motivi, mentre noi possiamo ragionevolmente temere di&nbsp;dimenticarci di&nbsp;impostare manualmente la&nbsp;pagina-genitore tutte le&nbsp;volte che pubblichiamo una nuova pagina&#8230; Oppure non ci&nbsp;piace fare troppe operazioni manuali uguali. Quindi vogliamo automatizzare questa parte del lavoro.<br \/>\nIn&nbsp;realt&agrave; la&nbsp;soluzione &egrave;&nbsp;molto semplice: possiamo inserire nel nostro tema una funzione che indichi una pagina concreta nell&rsquo;apposito campo della form di&nbsp;scrittura\/modifica della pagina-&laquo;figlio&raquo;. La&nbsp;pagina-genitore prestabilita pu&ograve; essere individuata, al&nbsp;fine del nostro codice PHP, attraverso il&nbsp;proprio&nbsp;id. Supponiamo quindi che la&nbsp;pagina che vogliamo impostare come genitore di&nbsp;default abbia id=58. L&rsquo;unica cosa che dobbiamo fare &egrave;&nbsp;inserire nel file functions.php del tema questo codice:<\/p>\n<pre class=\"brush: php; collapse: false; title: listing 1; notranslate\" title=\"listing 1\">\nadd_filter( 'wp_insert_post_data', 'set_parnt_page_dynamically' );\nfunction set_parnt_page_dynamically( $data )\n{\n    if ($data&#x5B;'post_type'] == 'page' )\n        $data&#x5B;'post_parent'] = 58;\n    return $data;\n}\n<\/pre>\n<p>\nOvviamente, l&rsquo;unica cosa che dovete personalizzare nel suddetto codice &egrave;&nbsp;il&nbsp;valore dell&rsquo;id: si&nbsp;trova alla riga&nbsp;5 del listing appena riportato. Poi salvate e&nbsp;caricate il&nbsp;file modificato sul server.<\/p>\n<blockquote class=\"lyrotstup\"><p><b>N.B.:<\/b> scoprire l&rsquo;id di&nbsp;una qualsiasi pagina (ma&nbsp;anche di&nbsp;un&nbsp;qualsiasi articolo) creata con il&nbsp;WordPress &egrave;&nbsp;semplicissimo. Andate sulla admin, aprite l&rsquo;elenco delle pagine e&nbsp;posizionate il&nbsp;cursore sul nome della pagina che vi&nbsp;interessa. In&nbsp;basso a&nbsp;sinistra comparir&agrave; una riga contenente un&nbsp;indirizzo. L&rsquo;id della rispettiva pagina &egrave;&nbsp;quel numero che segue dopo l&rsquo;espressione &laquo;post=&raquo;.<\/p><\/blockquote>\n<p>\nDa&nbsp;questo momento, ogni qualvolta che andate a&nbsp;creare una nuova pagina del sito dalla vostra admin di&nbsp;WordPress, nel menu laterale a&nbsp;destra vedrete la&nbsp;pagina-genitore gi&agrave; impostata (il&nbsp;suo nome dipende dalla organizzazione del vostro sito, nel mio caso &egrave;&nbsp;l&rsquo;indice dell&rsquo;Inerario):<br \/>\n<img decoding=\"async\" src=\"https:\/\/eugigufo.net\/images\/inerario\/art31pageparentdefaultwp.jpg\" title=\"pagina-genitore impostata per default\" border=\"0\"><br \/>\nSiamo riusciti a&nbsp;impostare una pagina-genitore di&nbsp;default per tutte le&nbsp;nuove pagine del sito! Se&nbsp;in&nbsp;qualit&agrave; della pagina-genitore di&nbsp;default dovesse essere scelta una pagina che a&nbsp;sua volta &egrave;&nbsp;la&nbsp;figlia di&nbsp;qualche altra pagina, l&rsquo;intera gerarchia sar&agrave; rispettata anche nella posizione della pagina pubblicata con l&rsquo;aiuto della funzione appena vista.<br \/>\nNaturalmente, la&nbsp;suddetta soluzione non impedisce di&nbsp;scegliere dal menu a&nbsp;tendina una pagina-genitore diversa da&nbsp;quella impostata per default. Con il&nbsp;codice inserito come descritto sopra, semplicemente, abbiamo automatizzato la&nbsp;scelta pi&ugrave; ricorrente.<\/p>\n<blockquote class=\"lyrotstup\"><p><b>N.B.:<\/b> tale metodo funziona solo con le&nbsp;pagine, mentre per gli articoli rimane&nbsp;&ndash; almeno per ora&nbsp;&ndash; una cosa impossibile in&nbsp;quanto contraria alla logica interna di&nbsp;WordPress: la&nbsp;pagina-genitore degli articoli &egrave;&nbsp;sempre la&nbsp;prima pagina del blog (indipendentemente dal fatto che lo&nbsp;chiamiate o&nbsp;meno con questa parola). Eventualmente, potete considerare l&rsquo;opzione di&nbsp;<a href=\"https:\/\/eugigufo.net\/it\/inerario\/paragrafo30\/\">cambiare la&nbsp;posizione del blog<\/a> stesso nella gerarchia delle pagine del vostro sito.<\/p><\/blockquote>\n","protected":false},"excerpt":{"rendered":"<p>Il paragrafo dell\u2019\u201cInerario\u201d dedicato al modo di impostare la pagina-genitore di default per tutte le nuove pagine del sito create e pubblicate con il WordPress.<br \/>\nQuesto paragrafo \u00e8 stato pensato per gli sviluppatori backend e per gli utenti avanzati del WordPress.<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":452,"menu_order":31,"comment_status":"open","ping_status":"closed","template":"inerarioart.php","meta":{"footnotes":""},"class_list":["post-4528","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/pages\/4528","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/comments?post=4528"}],"version-history":[{"count":0,"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/pages\/4528\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/pages\/452"}],"wp:attachment":[{"href":"https:\/\/eugigufo.net\/it\/wp-json\/wp\/v2\/media?parent=4528"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}