Jump to content

Thème enfant et erreurs javascript


Recommended Posts

Bonjour

J'ai créé un thème enfant dans le but pour le moment de ne modifier que le css et quelques tpl par la suite.
J'ai donc simplement le fichier theme.yml de base, la preview et mon fichier css.

Or je rencontre déjà plusieurs problèmes :

- Une des polices (fontawsome) n'est pas reconnue alors qu'elle est dans le thème parent. Je l'ai corrigée en installant la police dans mon thème enfant mais je n'aurai pas du avoir à faire cette manipulation.
- Des javascripts qui ne fonctionnent, notamment un carrousel sur la page d'accueil

Dans le thème parent tout fonctionne bien, j'ai donc du louper quelque chose dans les paramètres du thème enfant car normalement il doit overrider seulement les fichiers que mets dans le thème enfant et prendre les fichiers parents pour le reste or là y a un lien qui se fait pas entre le parent et l'enfant.

Avez-vous une piste ?

 

Fichier theme.yml

parent: solidtool
name: solidtool-child
display_name: Solidtool child
version: 1.0.0
assets:
 use_parent_assets: true

 

Erreurs JS

TypeError: pstfeature.owlCarousel is not a function[En savoir plus]      custom.js:157:1
TypeError: $.totalStorage is not a function[En savoir plus]  			 custom.js:340:16
Une chaîne vide a été transmise à « getElementById() ».					 core.js:632:15

Erreur dans les liens source : request failed with status 401
URL de la ressource : http://monsite.com/themes/core.js
URL du lien source : core.js.map[En savoir plus]

 

Edited by Metfab (see edit history)
Link to comment
Share on other sites

bonsoir,

assets:
  use_parent_assets: true
  css:
    all:
      - id: font-awesome
        path: assets/css/font-awesome/css/font-awesome.css
        media: all
        priority: 200
  js:
    all:
      - id: custom-lib
        path: assets/js/custom.js
        priority: 30
        position: bottom

Sans repertoire css au niveau du thème enfant.

Par contre, un dossier js et un fichier custom.js (même vide) au niveau du theme enfant.

Link to comment
Share on other sites

Merci, tu viens de me mettre sur une piste. En fait je viens de remarquer que mon fichier theme.yml ne semble pas prendre en compte les fichiers que je lui indique. Par défaut, le custom.css et custom.js sont bien pris en compte dès que je les mets dans le thème enfant (sans le préciser dans theme.yml)

Dans le thème parent il y a le code ci-dessous, j'ai voulu l'ajouter dans mon thème enfant, ainsi que copier les fichiers dans mon thème mais il ne les prends pas en compte, ces fichiers n'apparaissent pas dans le code source de la page.

   css:
     all:
       - id: fontawesome-lib-style
         path: assets/css/font-awesome.css
         media: all
         priority: 220
   js:
     all:
       - id: owl-carousel-lib
         path: assets/js/owl.carousel.js
         priority: 310
         position: bottom
       - id: totalstorage-lib
         path: assets/js/totalstorage.js
         priority: 320
         position: bottom

 

Il y a un post sur  Github sur les asset non pris en compte dans le thème enfant, on est pas mal à avoir ce problème. J'ai tenté de supprimer le répertoire de cache et de mettre use_parent_assets: false mais cela n'a rien changé.

Edited by Metfab (see edit history)
Link to comment
Share on other sites

voici personnellement mon fichier theme.yml qui marche.

parent: montheme
name: monthemechild
display_name: Montheme child theme
version: 1.0
author:
  name: "Guillaume"
assets:
  use_parent_assets: true
  css:
    all:
      - id: font-awesome
        path: assets/css/font-awesome/css/font-awesome.css
        media: all
        priority: 200
  js:
    all:
      - id: custom-lib
        path: assets/js/custom.js
        priority: 30
        position: bottom

Après dans paramètres avancés, forcer la compilation, utiliser aucun cache.

Vider la cache du navigateur aussi, ca pourrait être ca.

Perso, ensuite, si cela ne marche toujours pas, je repasserai en theme classic pour ensuite repasser dans mon theme enfant, histoire de voir comment il se comporte...

Link to comment
Share on other sites

  • 1 year later...
  • 2 weeks later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...