Aller au contenu

Quel CMF/CMS pour un site annuaire fortement ajaxé ?


Sujets conseillés

Posté (modifié)

hello

Fervent défenseur des CMS old school, je dois réaliser un site web dit "moderne".

Le contexte fonctionnel ? Réaliser un site web de type "commerces de proximité" (grosso modo un annuaire quoi !).

Mais le contexte technique exige les points suivants :

- beaucoup d'AJAX pour des effets à la Web 2.0

- un site optimisé pour le référencement dès la conception (pouvoir positionner des balises Hx, STRONG, TITLE, ALT, à moins que tout ce fasse dans le template et le CSS).

- un système de template efficace et facile pour faire travailler un infographiste qui ne touche pas trop à la technique (il ne touche pas au php)

- un système de géolocalisation avec du Google Maps

J'y ajoute une contrainte : je souhaite quelque chose de rapide, avec une faible courbe d'apprentissage pour un rendu optimal.

J'avais opté pour Joomla que je connais bien -pour y avoir réalisé pas mal de composants privés- mais pour faire une interface originale c'est pas gagné.

Donc je me tourne vers vous qui avez d'autres avis sur l'outil CMF ou CMS qui me sera le plus efficace.

Certains parlent de MODx, Typolight, Drupal, CMS Made Simple, Cake PHP, Ruby, Symphony et j'en passe... Mais lequel collerait avec mon besoin ?

lolo

ps : je me demande même si je ne devrais pas me baser sur un script tel que php link directory (phpLD), mais c'est un script d'annuaire trop pur et dur je crois.

pps : un peu à la manière des sites comme justacote, nomao, ...

Modifié par silexian
Posté (modifié)

en gros tu demandes le saint graal :-)

Plus sérieusement il faudrait un cahier des charges plus détaillées pour te dire qui serait un challenger possible pour ton site, il ya trop peu d'infos là. je peux te donner un avis sur la pertinence d'utiliser Modx ou Drupal car ce sont les 2 CMS que je connais le mieux mais il me faudrait plus d'infos.

Pour l'utilisation d'un framework pourquoi pas mais de ce que tu en dis, un cms me semble capable d'aller bien plus vite sur un projet de ce type si il ne contient pas de subtilités particulières

Quelles actions doivent être réalisées en ajax?

Modifié par nyl auster
Posté

nyl auster : hello

Comme cahier des charges détaillées, c'est un annuaire type pages jaunes, avec des catégories de commerces, des fiches pour chaque commerces avec des infos classiques, telles des coordonnées, un plan, un système de vote et d'avis....

Pour l'Ajax, il faudrait charger dynamiquement une carte comportant l'emplacement du commerces (ou des commerces si on est dans une liste + recharger dynamiquement la liste si on bouge dans la carte), de gérer le vote, les commentaires.

voilà quoi !

Posté

En attendant, j'ai cherché quels étaient les outils les plus populaires pour ce genre de projets.

Voici ce qui ressort de mon tour de piste des sites FR et US :

- 3 CMS : MODx, Drupal/Acquia et Typolight

- 4 CMF : CakePHP, Zend Framework, Code Igniter et Symphony

Pour info, voici des sondages sur les CMF php favoris :

-http://www.brownphp.com/2008/12/popular-php-frameworks-whats-your-fav/

-http://roshanbh.com.np/2008/06/which-is-the-best-php-framework.html

-http://www.developpez.net/forums/s1592/php/bibliotheques-frameworks/a/

En ce qui concerne les CMS, voici ce que j'en retiens :

- MODx :

Les + : backend puissant

Les - : pas assez de composants, encore un peu mûr, manques sur le i18n et le multisite

- Drupal :

Les + : bonne communauté réactive, framework puissant et souple

Les - : manque d'ergonomie, la gestion des templates est difficile (pleins de fichiers), un backend difficile

- Typolight :

Les + : entre modx et typolight, puissant

Les - : pas assez de composants, un backend un peu difficile

Posté (modifié)
Les - : manque d'ergonomie, la gestion des templates est difficile (pleins de fichiers), un backend difficile

en ce qui concerne les templates tout dépend du point de vue...

J'ai mis une journée pour réaliser mon premier design en partant de zero; vu que 80% du design se fait principalement dans deux fichiers (un template pour la page générale et un template pour l'article).

Drupal est à mon avis une bonne option pour un annuaires. pour les votes ils sont en ajax et je pense que drupal 6 dispose d'un systeme de commentaires en ajax. (module à installer et à tester car sur drupal 5 la pagination n'était pas encore en ajax)

Les champs CCK + les views vont permettre de mettre très rapidement la structure en place, le temps de comprendre comment fonctionne les vues (ce qui peut etre long quand on ne connait pas, c'est un CMS difficile à cerner compéré à un Modx ou un Joomla je trouve). Il y a un module pour la localisation et les cartes google map.

Par contre pour ton histoire de carte et de liste ajax si on bouge la carte, a priori là faudrait développer... Mais si c'est la seule partie à développer ou un peu chaude du projet, le CMS me parait plus justifié qu'un framework : quelqu'un qui connait bien drupal peut faire la structure d'un annuaire en quelques heures.

Modifié par nyl auster
Posté

nyl auster,

tu penses alors que Drupal, via ses capacités de CMS peut etre la base d'un site, et ensuite de profiter de l'architecture Framework pour affiner & développer ce qui sera spécifique.

En quoi un autre CMS comme Typolight est moins conseillé ?

lolo

Posté (modifié)
ps : je me demande même si je ne devrais pas me baser sur un script tel que php link directory (phpLD), mais c'est un script d'annuaire trop pur et dur je crois.

En moins pur et dur il y a freeglobes qui est sur une base smarty qui permet de séparer le code du graphisme. Une fois qu'on a compris le principe c'est super facile. En plus le code est bien structuré et lisible, donc facile à modifier et il y a toutes les classes pour gèrer la base de données.

L'inconvénient c'est que le script est à l'abandon et que le forum est mort. A réserver aux experts.

Dans les scripts d'annuaires il y a aussi arfooo, je ne l'ai pas testé mais il parait qu'il est plus lourd aussi bien au niveau du code que des templates.

Modifié par deskiller
Posté (modifié)

>silenxian :

c'est ainsi que je me sers de drupal dans le cadre de mon travail, mais maitriser drupal + son framework prends du temps, ça ne se maitrise pas en un mois...

Je pencherais plus pour drupal que pour modx ou typolight principalement en raison du très grand nombre du modules (couvrant beaucoup de besoins) et de la communauté très active. Et aussi tout simplement parce que drupal est très, très puissant même si il donne une impression de rigidité au départ.

Maintenant on l'a choisi principalement pour ces raisons:

1) je savais que j'allais m'en reservir pour d'autres projets; donc le temps investi à apprendre allait se révéler très bien récompensé sur le moyen terme

2) La boutique en ligne est très puissante et gratuite

3) il est très bon pour les sites communautaires et on en fait pas mal

4) Le framework PHP : il y a une API pour les formulaires assez hallucinante (courbe d'apprentissage rude par contre) et des fonctions qui permettent en une ligne de coder des trucs routiniers d'ordinaire très chiant. (une ligne de code et hop : systeme de pagination d'une requete sql par exemple).

5) le systeme de hooks qui permet de modifier presque tout ce qui se passe à l'écran : par exemple on peut remodeler à l'infini n'importe quel formulaire générer par le coeur de drupal : réordonner les champs, changer leur html etc... en utilisant un hook.

En gros : la courbe d'apprentissage est assez rude mais une fois maitrisé, ça va vraiment très très vite pour mettre en place par exemple... un annuaire?

à toi de voir si l'investissement en temps en vaut la chandelle. Peut être devrais tu pendre un ou deux jours pour tester les champs CCK, les views et les filtres exposés quand même :-)

Le défaut est que par rapport à du php ça bouffe beaucoup de ressources serveur et donc il faut prévoir au moins un gros mutu quand on a beaucoup de module; et parfois un dédié sur les plus gros projets. Je suppose qu'un framework php a de meilleures performances.

Sur mon projet actuel, je me retrouve avec 200 tables dans la BDD, ça fait quand même mal au coeur quand on a commencé à faire du php avant d'utiliser un CMS...

Modifié par nyl auster
Posté

Je rejoins ce que dit nyl dans l'ensemble mais une de tes exigences n'est pas *du tout* dans les clou avec Drupal :

un système de template efficace et facile pour faire travailler un infographiste qui ne touche pas trop à la technique (il ne touche pas au php)

Là il faudra passer son tour ou trouver un intégrateur en plus du graphiste (si celui-ci ne fait pas les deux) car avec Drupal, des choses qui prendront 5 secondes sous MODx vont prendre 15 minutes sous Drupal (et encore quand on sait déjà ce qu'on fait !). Exemple type hier je voulais juste ajouter une variable CCK à côté du titre dans le titre de la page, j'ai du chercher pour trouver un moyen de faire un override du template page.tpl.php qui est fonction du type de contenu (dans mon cas simplement une fiche ouvrage d'un éditeur, je voulais afficher l'éditeur à côté du titre). Déjà afficher une variable CCK en dehors de $content, ça demande un peu de php, qui n'est pas toujours très bien documenté (exemple : <?php print $node->field_editeur_editeur[0]['view'] ?> ) alors que dans MODx une simple balise [*nom-editeur*] dans le template ou dans un chunk et hop !

Si tu ajoute à ça la structure morcelée des templates dans Drupal, même si le système d'override est très puissant, il est lourd et on doit reconstruire une vue globale du template dans sa tête car contrairement à MODx on a pas de vision globale de ce qu'on fait... c'est donc une gymnastique et c'est le prix à payer pour disposer de ce qui fait par ailleurs la puissance de Drupal...

Typolight est aussi une bonne plateforme de dév à mon avis (si tu aimes PHP OO, alors tu seras servi approche très différente de Drupal), mais il faudrait que tu discutes avec Cyril Ponce par exemple ou d'autres dév francophone sur typolight.fr parceque je ne peux pas te donner un avis suffisamment approfondi sur la question. Et il est plus flexible que Drupal pour le templating, il n'y a pas photo ! Le gros défaut de Typolight c'est la faiblesse de la communauté anglophone et un dév principal un peu autocrate (shut, j'ai rien dit...).

Enfin pour conclure et ouvrir sur une autre piste et uniquement si ton projet n'est pas pressé, tu peux aussi attendre Expression Engine 2.0 qui est un CMS commercial par contre (mais pas très cher), dont le code est entièrement ré-écrit sous Code Igniter (le framework open source d'Ellis Lab, éditeur de EE). Petite preview ici : http://expressionengine.com/ee2_sneak_preview/

Je pense que les CMS construits sur la base d'un framework sont l'avenir du CMS, particulièrement si le framework sous jacent est adopté par un grand nombre de développeurs... ça veut dire potentiellement grand nombre de addons pourront être produits rapidement, avec une meilleure intégration aux core des CMS, une meilleure qualité globale de code et une meilleure sécurité...

Posté (modifié)

oui je rejoins davidm concernant le systeme de template. Faire certaines modifications de design demande une grosse compréhension du CMS dans l'ensemble. Si il y a quelqu'un derrière qui maitrise le php pour les ajustements ça roule (en prenant plus de temps que sous MODx quoiqu'il en soit c'est sur) sinon c'est galère. (décider de donner un id à chaque élément de menu de navigation n'est pas si simple par exemple :-( )

En gros l'idéal consisterait à savoir se servir sur le bout des doigts du fichiher template.php des fichiers themes : c'est lui qui dit quelle variable passer à quel template (ou même qui permet de créer un nouveau fichier template).

Maintenant ce n'est pas ce point là qui me ferait passer de drupal à Modx sur un projet car un template; on peut toujours s'en tirer en y passant un peu de temps (ou en torturant un peu le css ponctuellement); alors qu'une fonctionnalité ou un module qui manque peuvent mener à une impasse et à un temps de développement démultiplié; et de ce côté là drupal (fonctionnalités disponibles via des centaines de modules= en a dans le caleçon.

Je ne prétends pas que ce soit la meilleure solution, je pense que les gros défauts d'un site sous drupal ont été énuméré : admin qui rame avec beaucoup de modules, besoin d'un hébergement costaud sur de gros sites, - prévoir 40 MO de memory limit pour être tranquille sur un projet avec plus de cents modules- , template morcelé qui rend difficile l'accès individuel à certaines variables. Ah, et une croube d'apprentissage qui pique.

Pour le reste; une fois maitrisé ça va très vite, les champs CCK sont très nombreux, performants et variés, le module de gestion d'image est puissant (créer plusieurs miniatures différentes à la volée d'une image, enchainer des actions différentes tel qu'un crop puis un resize), les views ou les triggers sont impressionant. Pour peu qu'on se mette aux panels et aux contextes, on pravient à faire des choses que je ne pensais pas possible avec un CMS. Et l'existence du framework derrière qui permet d'apprendre à créer un module en une demi-heure pour avec le livre qui va bien.

Modifié par nyl auster

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...