italia / design-comuni-wordpress-theme

Tema Wordpress per i siti dei comuni italiani
GNU Affero General Public License v3.0
33 stars 33 forks source link

Attivazione Tema, pagine senza template predefinito non assegnate correttamente. #425

Closed xenio closed 2 months ago

xenio commented 5 months ago

Prerequisiti

Descrivi il problema

All'attivazione del tema le pagine che non hanno un template assegnato su: https://github.com/italia/design-comuni-wordpress-theme/blob/60b9764d72751d10328f2237091e717cf7ca3e25/inc/comuni_pagine.json#L13

effettivamente non gli viene assegnato un template predefinito per via della verifica non corretta su:

https://github.com/italia/design-comuni-wordpress-theme/blob/60b9764d72751d10328f2237091e717cf7ca3e25/inc/activation.php#L495

La if per la verifica dovrebbe essere con il parametro $template passato dalla funzione non $new_page_template che non sarà mai empty.

Includi link o screenshot

No response

Su quale sisitema operativo stai riscontrando il problema?

macOS

Su quale browser stai riscontrando il problema?

Qualsiasi

Che versione del tema stai utilizzando?

1.7.5

enrimk commented 5 months ago

Vero! Però più che il confronto nell'if, è l'assegnazione di $new_page_template che va corretta? Cioè, gli dovrebbe essere consentito di essere vuota. Mentre ora, come tu dici, si assegna sempre un template, anche se inesistente.

https://github.com/italia/design-comuni-wordpress-theme/blob/60b9764d72751d10328f2237091e717cf7ca3e25/inc/activation.php#L479 Meglio se fosse:

     $new_page_template = $template? 'page-templates/'.$template.'.php' : '';

Nel json i template_name contengono solo lo slug del template, non l'intero path come richiesto dal postmeta '_wp_page_template', e dunque un path deve pur essere formato. Solo se il template c'è, però.