2011-06-16 2 views
0

Je suis un développeur pour un système CMS que mon employeur vend à des clients. Nous utilisons PHP et MySQL. Le panneau d'administration de CMS inclut un système de mise à jour pour maintenir le CMS à jour avec chaque nouvelle version publiée. Nous sommes en train de développer une série de modèles de modèles personnalisés pour le CMS, tous utilisant Smarty.Quel serait un moyen efficace de mettre à jour les modèles pour un CMS?

L'énigme que nous faisons face est de savoir comment mettre à jour ces modèles que les nouvelles versions du CMS sont libérés.

Nous sommes conscients que de nombreux utilisateurs du CMS vont grandement personnaliser leurs modèles et la mise à jour des modèles les écrasera, mais des mises à jour de modèles sont souvent nécessaires lorsque nous ajoutons de nouvelles fonctionnalités au CMS. Est-ce que quelqu'un a des idées concernant une méthodologie de mise à jour de modèle?

+1

Les modèles sont là pour fournir une couche d'indépendance par rapport au moteur sous-jacent. empaquetez vos modèles séparément du moteur afin que les clients puissent mettre à niveau seulement les pièces qu'ils veulent. –

+0

Est-ce que ce logiciel est vendu ou quelque chose que vous hébergez? C'est fondamentalement un problème VCS ... quand vous mettez à jour vos templates, vous pouvez juste utiliser 'patch' pour appliquer les diffs, et s'il y a un conflit avec un changement d'utilisateur, marquez-le pour une fusion manuelle. Clabber les modèles de vos utilisateurs ne serait pas idéal du point de vue du client. D'autres CMS tels que eZPublish permettent de modifier (de manière flexible) les fichiers de modèles individuels (http://doc.ez.no/eZ-Publish/Technical-manual/3.8/Templates/The-template-override-system) de manière flexible. jamais besoin d'écraser. – joelhardi

Répondre

0

Prenant la parole en tant que développeur Wordpress, toutes les personnalisations que je fais sont fait pas sur le CSS ou PHP livré, mais de nouveaux fichiers. Il est de notoriété publique parmi les développeurs chevronnés que lorsque de nouveaux modèles sont déployés, les personnalisations effectuées sur les fichiers livrés sont remplacées.

+0

Pouvez-vous élaborer un peu là-dessus? Si un modèle se compose de quelques fichiers CSS et d'un tas de fichiers TPL, comment gérez-vous cela? – Tanoro

+0

Bien sûr Christopher, le développeur doit ajouter un autre fichier CSS qui contient leurs personnalisations. Vous n'avez pas besoin de connaître le nom, le mien que j'appelle habituellement custom.css. De cette façon, lorsque vous choisissez de mettre à jour votre modèle CSS, j'ai toujours mon propre CSS privé qui est lu en premier - et donc toutes mes personnalisations écrasent les vôtres. Est-ce que ça a du sens? – Sanden

Questions connexes