Ciao @mpd01,
se il file è dentro una cartella inc è possibile che sia richiamato in uno dei template file della root principale del tema padre.
Se così è, a questo punto l’url dell’import non è più valido.
Inserisci nel tuo Child anche il file che richiama l’inc, rispettando la gerarchia
Spero di essermi spiegata 🙂
Facci sapere
Chi ha creato la discussione
mpd01
(@mpd01)
ciao, si in effetti il file è richiamato in functions.php con “require ‘inc/file.php’;”.
Ho inserito la stessa require in functions.php del tema child e ricostruito la cartella inc con all’interno il file php che ho modificato. Ma niente..continua a caricare l’originale
Ho provato a gestire il tema child anche con il plugin “Child Theme Configurator” nel dubbio di aver fatto qualche errore, ma la situazione non migliora
Ciao @mpd01
che tema grafico stai usando?
Chi ha creato la discussione
mpd01
(@mpd01)
Non mi ero reso conto che il file functions.php del tema child viene letto per primo. Posso fare tutte le modifiche che voglio ma se poi viene letto quello del tema principale si ricaricano anche i file php originali..
L’unica alternativa che ho trovato è inserire “require get_stylesheet_directory() . ‘/inc/file.php’;” al posto di “require ‘/inc/file.php’;” nel file functions.php del tema padre, per fargli leggere la cartella “inc” nel tema child.
Così però si perde l’utilità del tema child…con un update dovrò riscrivere nuovamente la modifica in functions
Ciao @mpd01,
se le funzionalità del tema parent che vuoi modificare sono contenute dentro delle funzioni hook o filtri puoi modificarle inserendo nel tuo tema child delle funzioni hook o filtri che vengano eseguite DOPO quelle del parent. Per fare questo devi giocare sul parametro $priority
delle funzioni add_action()
e add_filter()
. Ecco i link alla documentazione delle funzioni:
https://developer.wordpress.org/reference/functions/add_action/
https://developer.wordpress.org/reference/functions/add_filter/
Oppure puoi rimuovere quelle del parent tramite le funzioni remove_action()
e remove_filter()
, però devi eseguire queste funzioni agganciandoti ad un hook che venga eseguito DOPO quello delle analoghe funzioni nel parent theme.
Va detto però che non è detto che queste tecniche nel tuo caso funzionino, dipende da come è scritto e da cosa fa il codice del parent theme che vuoi modificare, quindi va valutato caso per caso.
L’argomento è tecnico e complesso e quindi è impossibile esaurirlo nello spazio di una risposta, ho cercato di darti qualche spunto che potrai approfondire per verificare se nel tuo caso sia applicabile o meno.
Spero possa esserti utile.
Giancarlo
-
Questa risposta è stata modificata 7 anni, 4 mesi fa da Giancarlo Mosso. Motivo: correzioni ortografiche e formattazione