Voici la situation: j'ai plusieurs modules self made, tous testés et fonctionnant en utilisant le thème par défaut. Ensuite, nous avons acheté et installé un nouveau thème. Passé au nouveau thème et les modules ne sont pas affichés. Après plusieurs tests d'essai / d'échec, j'ai constaté que je devais copier la mise en page et les fichiers de modèle correspondants dans les dossiers correspondants du thème récemment installé.
Donc, ma question est: que dois-je faire pour que tous mes modules fonctionnent avec n'importe quel thème installé après la configuration du module?
configuration
layout
Iaroslav
la source
la source
Réponses:
Exemple:
la source
La dure vérité est que vous ne pouvez pas vraiment garantir qu'ils le seront. Le fait de placer vos fichiers
base/default
(oudefault/default
s'ils remplacent les modèles de base - car vous ne voulez pas écraser les fichiers de base avec une installation de module, bien que cela vous oblige à conserver les doublons pour l'édition entreprise) garantira qu'ils deviendront les solutions de rechange, mais les fichiers de thème toujours être la priorité la plus élevée.La plupart des modules sont livrés avec un guide d'installation, qui comprend la mention de copier les fichiers de modèle dans le thème de l'utilisateur s'ils en ont un personnalisé. C'est à peu près le mieux que vous puissiez faire.
la source
Une chose que nous avons utilisée à quelques reprises est le module [Custom Fallback] [2] de [Fabrizio Branca] [1]. C'est un module très utile pour spécifier votre propre hiérarchie de repli de thème personnalisé. Une chose que vous pouvez faire est de spécifier:
Ensuite, tous les modules qui mettent leurs propres modèles dans le
default/default
thème. Ne fonctionnera pas s'ils essaient de remplacer lesbase/default
packages.Vous pouvez spécifier n'importe quel nombre de packages / thèmes dans la hiérarchie de secours personnalisée.
la source
Tout modèle et fichier de mise en page
base/default
sera chargé, sauf s'il est remplacé quelque part le long du chemin. Cependant, si votre module personnalisé est un widget quelconque, vous devez vous assurer qu'il est répété là où vous en avez besoin. Si, par exemple, vous apportez des modifications qui sont affichées sur la page du produit viagetChildHtml
, ces appels doivent également être dans le thème correspondant. Si toutefois vos modèles de modules sont des pages par eux-mêmes et à partir desquels ils ne sont pas chargésbase/default
, quelque chose bloque la configuration de la disposition et vous devriez trouver quoi.la source
getChild
, j'ai en effet quelques appels de ce genre.Il n'y a pas de réponse simple à cela. Cela dépend des modules que vous avez. Par exemple, certaines sociétés de modules, remplaçant les fichiers principaux. Par conséquent, vous devez d' abord vérifier quels fichiers sont disponibles dans les
app/etc/modules
etapp/code/local/Mage
,app/code/community/Mage
dossiers. Comme vous le savez peut-être, le premier dossier est un dossier d'initialisation de module que vous pouvez désactiver ou activer les modules liés par les fichiers xml. Les deux derniers dossiers (s'ils sont disponibles) sont des dossiers remplaçant le code principal.Ensuite, ouvrez l'un des fichiers xml de ce
etc/modules
répertoire disponible . Vous verrez quelque chose comme ci-dessous:Voici les parties importantes sont
Company
etNamespace
. Lorsque vous visitez leapp/code/local
ou lesapp/code/community
dossiers, vous verrez un dossier nomméCompany
et suivi d'un sous-dossier nomméNamespace
.Lorsque vous recherchez,
Namespace
vous verrez un sous-dossier nommé/etc
. Ce dossier conserve le fichier de configuration lié au moduleconfig.xml
. Ce fichier contient des lignes de configuration liées au module que vous pouvez consulter les fichiers liés à ce module.Comme je l'ai dit dans ma première ligne, c'est difficile à gérer.
la source