Système de fichiers d'XCMS

XCMS peut paraître déroutant au niveau de l'arborescence de ses fichiers. En effet, sur le compte FTP de nos clients, il y a rarement des fichiers PHP, parfois des fichiers .lang et des fichiers .tpl. Mais le plus souvent seuls, un fichier config.xml, un fichier index.php contenant quelques lignes de code, un fichier .htaaccess et les fichiers relatif au design (CSS et images) et aux évènements (Javascript) sont visibles.

Ceci est tout à fait normal, XCMS est un CMS multisite qui permet de ne pas réinstaller ses fichiers standards à chaque nouveau site. Ceci nous fait gagner du temps et de l'argent, et donc, nos clients sont mieux servis. Cette fonctionnalité multisite existe depuis sa création, contrairement à la plupart des CMS qui ont été adaptés plus tard, parfois même en créant une nouvelle branche.

XCMS est multisite, et donc, monosite. Mais ses avantages sont nombreux lorsqu'il est utilisé au maximum de son potentiel. Ce petit texte est là pour vous y aider.

Un CMS multipath

Ce qui est intéressant dans XCMS, c'est que lorsque vous créez un site, vous pouvez spécifier dans son fichier de configuration (config.xml) une propriété site->paths. Par défaut, il s'agit de la variable path déconcaténée de PHP définie dans le fichier PHP.ini.

Souvent, deux chemins sont renseignés : le chemin courant ./ et le chemin d'installation d'XCMS. Mais aucune limite n'est imposée, ce qui permet une configuration multisite intermédiaire.

En effet, XCMS, lorsqu'il accède à un fichier (ou tente d'y accèder), va essayer de le trouver, d'abord dans le chemin courant, puis dans tous les chemins spécifiés dans la configuration du site. Ceci est valable pour les fichiers .lang, .tpl et .php. A la différence que les fichiers de langues, s'il sont y présents, seront chargés dans chacun des chemins configurés. Seul le fichier PHP de plus haut niveau sera executé (mais on peut appeller les autres dans ce dernier). Le fichier de template de plus haut niveau sera utilisé (bien que nous soyons entrain de réfléchir à un système permettant d'inclure les autres).

Les applications sont très intéressantes, par exemple, les hôtels et restaurants du Nord, de Paris, de Bretagne, de Picardie etc... sont une bonne application de ce principe.

Un CMS multiformat

Un point fort d'XCMS est sa capacité à rendre le contenu dans de nombreux formats différents et ce à l'infini. Les formats préconçus sont XHTML, RSS 1.0, ATOM 1.0, Texte et JSon. Ceci est rendu possible sans efforts grâce à son système de template.

Ainsi, en fonction du format de rendu, vous trouverez les fichiers de template dans l'arborescence module/(module courant)/(type courant)/(action courante).tpl.

Un CMS modulable

XCMS raisonne en modules. Pour lui, chaque section de l'arborescence du site est associée à un module qui va permettre de visualiser son contenu, mais aussi, sous réserve de posséder les droits nécessaires, de le modifier, supprimer etc...

De ce fait, vous trouverez tous les modules d'XCMS dans leurs dossiers respectifs. Le principal étant le module 'system' contenant tous les fichiers de base nécessaires au fonctionnement d'XCMS. On peut noter aussi le module 'tree' qui gère l'arborescence du site et l'affichage du plan, le module 'mysql' qui gère les données en provenance de MySQL (articles, nouvelles, offres d'emploi etc...), le module 'admin' qui permet la connexion au site en mode administrateur, le module 'cms' qui permet de modifier le contenu d'une page, le module 'contact' pour le formulaire de contact et enfin, le module 'planet' qui gère la mutualisation de flux de données.

Tous ces modules sont paramétrables en mode super-utilisateur depuis la page de gestion de l'arborescence du site. Pour ce faire, il suffit de spécifier dans le champs configuration, le nom du module (module=tree) et dans le champs paramètres l'action par défaut (action=list). Selon les modules, d'autres paramètres et d'autres configuration peuvent être allouées (ex. : module=mysq-table=articles-patch=articles et action=list-limit=10). Il sera parfois nécessaire de créer des tables MySQL ou un fichier de données (data/(document_href).dat).

La différence entre les configurations et les paramètres, c'est que les paramètres peuvent être modifiés par le visiteur (index.php?action=read&id=4).

Voilà ce qu'il faut savoir pour commencer à modifier les sites de nos clients (ou les votres si vous êtes distributeur/client grand compte). N'hésitez pas à nous adresser vos questions techniques via notre formulaire de contact.

Derniers sites créés

Pièces Auto

Pièces AutoPièces Auto est une enseigne née dans le Nord de la France, implantée nationalement, qui propose des pièces détachées neuves à des tarifs ultra compétitifs. Suite

Actualité

Performance améliorée

Nous avons profité d'un changement de serveur web pour améliorer une fois encore la performance de nos hébergements. Suite

A propos

Nous avons créé l'agence Elitwork en 2006 au coeur du Nord-Pas-de-Calais dans le triangle Arras - Cambrai - Douai. Depuis, nous forgeons notre savoir-faire au jour le jour afin rester experts du web et des technologies d'Internet en général.
Spécialisés dans la créations de sites Internet et le développement d'application/progiciels web sur mesure, nous permettons à nos clients de réussir leur transition vers un système d'information connecté. En savoir plus

Actu de l'agence

Orange HTML5 Hackathon

Orange HTML5 HackathonNicolas Froidure, le développeur d'Elitwork a remporté avec son équipe le grand prix du jury du concours de hacking Orange HTML5 Hackathon. Découvrez cette folle journée ! Suite

Nous contacter

Elitwork SARL
10, rue Antoine DEQUEANT
62860 Oisy le Verger
Tél. : 03 21 59 62 24
E-mail