constantes personnalisées

cpalocpalo Member
décembre 2019 modifié dans Version en cours de développement

Bonsoir,

Pour créer et utiliser quelques constantes, perso, je suis obligé ( mais peut etre y-a-t-il une autre solution) de modifier le fichier index.php?

N'y aurait-il pas une possibilité d'inclure en natif la gestion de telles constantes perso?

include(PLX_ROOT.'config.php');
include(PLX_CORE.'lib/config.php');
   // Code rajouté :
   # Inclut le fichier de configuration liée au site
   # PLS_SITECONFIG_PATH est fourni par ./config.php
   include(PLS_SITECONFIG_PATH.'siteconfig.php'); 

le config.php:

/ Définit l'emplacement des dossiers de configuration, 
   const PLX_CONFIG_PATH = 'data/configuration/';
   // Définit l'emplacement du dossier contenant les constantes personnalisées
   const PLS_SITECONFIG_PATH = 'data/siteconfig/'; 

Le fichier siteconfig.php qui se trouve dans data/siteconfig/

// Traitement du dossier assets   
   const FONTS = PLS_ASSETS_PATH.'fonts/';
   const IMG = PLS_ASSETS_PATH.'img/';
   const LIBS = PLS_ASSETS_PATH.'libs/';
   const UTILS = PLS_ASSETS_PATH.'css/'; 
   const VENDORS = PLS_ASSETS_PATH.'vendors/'; 

Et lorsque j'utilise une constante dans un template de page

<link rel="stylesheet" href="<?php echo FONTS ?>fontawesome/css/all.css" />   
<script src="<?php echo VENDORS ?>prism/prism.js"></script>

Réponses

  • bazooka07bazooka07 PluXml Lead Developer, Moderator

    Si c'est pour personnaliser un thème, l'endroit le plus pertinent pour déclarer ces constantes est certainement le fichier "header.php" du thème :

    <?php if(!defined('PLX_ROOT')) exit;?>
    // Traitement du dossier assets   
       const FONTS = PLS_ASSETS_PATH.'fonts/';
       const IMG = PLS_ASSETS_PATH.'img/';
       const LIBS = PLS_ASSETS_PATH.'libs/';
       const UTILS = PLS_ASSETS_PATH.'css/'; 
       const VENDORS = PLS_ASSETS_PATH.'vendors/';
    <!DOCTYPE html>
    <html lang="<?php$plxShow->defaultLang()?>">
    <head>
    


  • cpalocpalo Member
    décembre 2019 modifié

    Dans mon dossier siteconfig, j'ai également un fichier gtag.php avec le code pour Google Analytics.

    Et mon header.php :

    <?php if(!defined('PLX_ROOT')) exit; ?>
    <!DOCTYPE html>
    <html lang="<?php$plxShow->defaultLang()?>">
    <head>
       <?php include_once(PLS_SITECONFIG_PATH.'gtag.php') ?>
    

    Je pourrai donc rajouter une ligne:

    <?php include_once(PLS_SITECONFIG_PATH.'siteconfig.php') ?>
    

    Je redonne mon fichier siteconfig.php afin de bien donne rles constantes que j'utilise, et peut etre que mauvaise utilisation pour certaines. Car llà je "finalise" mon projet ( même si ce n'est jamais finalisé):

    <?php
       // Définit la meta geolocalisation
       const META_GEOPLACENAME = 'Franqueville, Normandie, France';
       // Définit l'emplacement du dossier assets 
       #const PLS_ASSETS_PATH = PLX_ROOT.'assets/';
        const PLS_ASSETS_PATH = 'http://cdn.local/';    # http://simpleframework.local/assets/
       // Traitement du dossier assets   
       const FONTS = PLS_ASSETS_PATH.'fonts/';
       const IMG = PLS_ASSETS_PATH.'img/';
       const LIBS = PLS_ASSETS_PATH.'libs/';
       const UTILS = PLS_ASSETS_PATH.'utils/'; 
       const VENDORS = PLS_ASSETS_PATH.'vendors/';  
       // Traitement du framework
       const CSS = PLS_ASSETS_PATH.'css/simpleCss-9.11/src/dvpt-simplecss.css';
       const GRID = PLS_ASSETS_PATH.'css/simpleCss-9.11/src/dvpt-simplegrid.css';
       #const CSS = PLS_ASSETS_PATH.'css/myPluCss-5.8/myplucss.css';
       #const GRID = PLS_ASSETS_PATH.'css/myPluCss-5.8/myplucss-grid.css';
       // Définit la version de Jquery utilisée 
       const JQUERY = 'jquery-3.4.1.js';
       //Twitter cards
       const TWITTER_CARD = 'summary';
       const TWITTER_SITE = '@Breizh_27';
       const TWITTER_CREATOR = '@Breizh_27';
       //Metas Opengraph
    ?>
    
Connectez-vous ou Inscrivez-vous pour répondre.