J'ai un modèle PHP dans mon thème enfant qui appelle une fonction ale_filter()
, via
<div class="articles">
<?php ale_filter($_POST);?>
</div>
La fonction est définie dans un fichier de thème parent: /aletheme/functions.filter.php. J'aimerais copier ce fichier dans mon thème enfant, apporter des modifications à la fonction et m'assurer que le modèle PHP en question appelle cette fonction et non la fonction de thème parent. Comment je le fais?
J'ai déjà copié le fichier de thème parent dans mon thème enfant, en utilisant le même nom de fichier et le même chemin d'accès (/aletheme/functions/filter.php).
A question précédente Stack Exchange liée à une page avec trois méthodes. Ces trois méthodes étaient:
J'ai trouvé plusieurs autres questions sur Stack Exchange, mais les réponses à toutes les méthodes décrites ne s'appliquent pas dans mon cas:
Merci.
Comme la fonction est utilisée dans le modèle de votre thème enfant, rien ne vous empêche d'utiliser une fonction portant un nom différent. Donc, vous n'avez pas réellement besoin de brancher la fonction, il vous suffit de créer une fonction qui fait ce que vous voulez et de l'utiliser à la place.
Copiez donc ale_filter()
dans votre thème enfant, renommez-le à l'identique ale_child_filter()
, modifiez-le comme bon vous semble, puis modifiez simplement votre modèle pour utiliser cette fonction.
Vous devez uniquement connecter une fonction si celle-ci est utilisée quelque part que vous ne pouvez pas écraser avec votre thème enfant. Le brancher vous permettrait de redéfinir une fonction lorsque vous n’avez pas l’accès pour changer son utilisation. Étant donné que vous avez la possibilité de changer la fonction utilisée, il est inutile de la brancher.