Je veux créer les différents thèmes pour mon application. J'ai gardé tous les dossiers de thème dans le http: //example.com/thems/, .. Je veux charger les vues de ce dossier de thèmes pour faire le modèle personnalisé. Avoir le thème en cours dans une variable de session $ themeComment charger l'affichage dans Codeigniter pas dans le dossier Vues
Répondre
puis lors du chargement de la vue, inclure la variable de session dans le chemin,
$this->load->view('themes/'.$theme.'/<page>')
;
Phil Sturgeon et plusieurs autres ont écrit des bibliothèques de modèles qui prennent en charge des thèmes plus ou moins prêts à l'emploi. Cela vous permet de garder la structure MVC et est plutôt flexible.
Plus sur the docs
apparaissent juste la classe de base de CI_Loader. Créer un nouveau fichier à l'application/core/MY_Loader.php et étendre la méthode __construct
class My_Loader extends CI_Loader { function __construct() { //Change this property to match your new path $this->_ci_view_path = APPPATH.'views/'; $this->_ci_ob_level = ob_get_level(); $this->_ci_library_paths = array(APPPATH, BASEPATH); $this->_ci_helper_paths = array(APPPATH, BASEPATH); $this->_ci_model_paths = array(APPPATH); log_message('debug', "Loader Class Initialized"); } }
Je suis très intéressé si ce petit hack fonctionne :)
J'ai fait un sélecteur de thème très simple basé sur un bibliothèque existante. Bien que les fichiers se trouvent toujours dans le dossier des vues mais dans le dossier des vues sont des sous-dossiers de thème.
http://keithics.com/blog/php-programming/a-very-simple-theme-switcher-for-codeigniter
- 1. Comment charger la bibliothèque cURL dans les vues Codeigniter
- 2. comment charger css dans codeigniter?
- 3. preg_replace avec des vues dans Codeigniter, comment?
- 4. Plusieurs vues dans codeigniter
- 5. Comment charger un paquet tiers dans Codeigniter?
- 6. Comment charger le modèle dans le modèle dans Codeigniter?
- 7. Accéder au dossier parent dans le codeigniter
- 8. Ne pas charger de vue dans Codeigniter
- 9. HMVC et Vues dans les dossiers (Codeigniter)
- 10. Dossier HAML dans les vues
- 11. Codeigniter toujours charger dans le contrôleur
- 12. Charger le fichier PDF dans codeigniter
- 13. CodeIgniter - comment charger la bibliothèque?
- 14. mysql requête dans le dossier actif CodeIgniter
- 15. $ data [ « de main_content »] pour charger la vue en sous-dossier dans CodeIgniter
- 16. Comment charger mon CSS dans CodeIgniter
- 17. comment installer codeigniter dans un dossier easyphp?
- 18. placer des images/css/js dans le dossier views (codeigniter)
- 19. Comment charger/utiliser MY_Session dans CodeIgniter?
- 20. Vues composites avec Codeigniter?
- 21. Comment charger l'assistant du modèle dans CodeIgniter?
- 22. Charger une applet dans le sous-dossier
- 23. Vues Codeigniter: Comment créer des sous-répertoires pour mes vues?
- 24. Comment et où placer une API dans le dossier Codeigniter?
- 25. Comment charger les vues MVC dans le fichier modèle principal
- 26. charger tous les fichiers de classe dans un dossier dans codeigniter?
- 27. Comment inclure un fichier dans Codeigniter?
- 28. CakePHP pas charger les vues
- 29. Erreur dans web.config sous vues dans le dossier MVC3
- 30. Ignorer le dossier avec CodeIgniter?
Thanx @arun mais est-il nécessaire d'ajouter la variable thème de la session – binesh
sessions sont sans doute la meilleure façon de le faire. Vous pouvez également utiliser un cookie, ou même un segment d'URI, mais cela doit être présent dans chaque URI pour fonctionner correctement. Voir mon message pour une autre option – Ross
@binesh hey il semble que vous avez les thèmes dans http: //example.com/thems/. Que voulez-vous dire par thèmes ??? ... Est-ce que les fichiers de vue ou juste des images et css. Les fichiers de vue Coz ne peuvent pas être à l'intérieur de http :: //example.com/thems/ –