Configurations

Un certain nombre de choses sont à paramétrer pour que tout se passe bien, surtout au niveau du cache.


minim

Sur cette interface, vous pouvez configurer les données principales de votre application.

Les valeurs renseignées ici sont utilisées à bon nombre d'endroits dans le code, il convient donc d'être minutieux avec ces données.

Les bulles d'aide de cette interface ne sont pas encore toutes disponibles.

Vous pouvez configurer :

  • DOMAIN_NAME : Le nom de domaine.
  • EMAIL_CONTACT : L'email du contact principal.
  • SITE_URL_PROD : L'URL de production de l'application.
  • SITE_URL_DEV : L'URL de développement de l'application.
  • ADMIN_URL_PROD : L'URL de production du backoffice l'application.
  • ADMIN_URL_DEV : L'URL de développement du backoffice l'application.
  • STATIC_SERVER_URL : L'URL de production du serveur statique de l'application.
  • STATIC_DEV_SERVER_URL : L'URL de développement du serveur statique de l'application.
  • ERROR_MAIL : L'email du contact concerné par les erreurs de l'application.
  • DEFAULT_LANG : La langue par défaut de l'application.
  • LOGS_TTL : La durée de vie des logs d'erreurs.
  • GOOGLE_ANALYTICS_TAG : Identifiant Google analytics.
  • MAINTENANCE : Si l'application est en maintenance ou non.
  • SYS_DB_NEED : Si l'application nécessite une base de données.
  • SYS_DB_HOST : Adresse de la basse de données.
  • SYS_DB_TYPE : Type de base de données (mySQL, postgreSQL, msSQL...).
  • SYS_DB_USER : Utilisateur.
  • SYS_DB_PWD : Mot de passe.
  • SYS_DB_PROD_DATABASE : Nom de la base de données de production.
  • SYS_DB_DEV_DATABASE : Nom de la base de données de développement.

Nouvelle valeur

Pour ajouter une valeur en configuration, il vous suffit de rajouter un nœud dans le fichier XML de configuration du module concerné (minim par défaut).

Vous pouvez définir une liste de choix en ajoutant un attribut "options" à ce nœud.

Vous avez la possibilité de séparer vos options possibles par :

  • des "|" pour un choix unique, qui seront proposées dans un champs de type "select"
  • des "," pour un choix multiple, qui seront proposées sous forme de checkbox.

Le nom de la clé utilisé est aussi déterminant sur la manière dont cette dernière vas être traitée, à savoir si elle est protégée ou non.


Les pages

Sur cette interface, vous pouvez configurer les métadonnées de vos pages.

Les pages sont listées automatiquement si elles sont en cache.

Pour les pages dynamiques, vous pouvez ajouter une configuration spécifique, sinon, ce sera la configuration par défaut qui sera appliquée.

Les bulles d'aide de cette interface ne sont pas encore toutes disponibles.

Vous pouvez configurer :

  • Les robots (index, noindex, etc).
  • Les métadonnées classiques.
  • Les données opengraph pour facebook.
  • Les données opengraph pour twitter (pas encore fonctionnel).
  • Les données opengraph pour google+.
  • La vue à utiliser.

Cette interface et très facile à surcharger afin d'y ajouter les métadonnées dont vous avez besoin.

A noter : cette configuration est ensuite intégrée dans la classe class.PagesConf.php pour des raisons de performance.


Prise en compte des fichiers css et javascript

Cette gestion se passe essentiellement dans la classe class.AssetsLinker.php.

Les fichiers concat_css.xml et concat_js.xml

Dans ces fichiers vous pouvez inclure tous les fichiers css et js de minim ainsi que de ses modules. Les inclusions sont regroupées par module et par utilité, à savoir front ou back, pour ne pas charger les css et js du back sur le front par exemple (fichier d'exemple en illustration).

Tous ces fichiers seront alors concaténés puis minifiés pour ne faire qu'un seul fichier par type :

  • main.back.functions.js
  • main.back.launchers.js
  • main.front.functions.js
  • main.front.launchers.js
  • main.front.css
  • main.back.css

Une différence notable entre les fichiers js et css, c'est qu'il y a un niveau supplémentaire pour les fichiers javascript.

Il convient de séparer les fonctions des observateurs et autres lanceurs, les fonctions devant être chargées en premier.

Pour ce faire, un nœud dans le XML des fichiers javascript permet de préciser "functions" ou "launchers".

Les fichiers css.xml et js.xml

Ici, ce sont les bibliothèques et les fichiers finaux (les fichiers définis dans concat_css.xml et concat_js.xml donc) qui sont traités et inclus.

Dans les sources fournies, celles de ce site en l'occurrence, inspirez vous de la configuration et des fichiers existant pour vous faire la main puis allez voir directement dans le code comment ça se passe pour compléter, améliorer, surcharger... à votre guise !