Aller au contenu

CMS... de base de données


cébé

Sujets conseillés

Bonjour,

J'ai voulu essayer DC2 pour faire une galerie vidéo avec le plugin DS gallery mais il s'avère que DC2 reste ce qu'il est : un gestionnaire de blog.

Quelqu'un demandait il y a peu une galerie vidéo et on lui a répondu uniquement une extension de Joomla.

Au final, je me pose une question : existe t-il des CMS mettant en ligne une base de données dont on choisi soi-même les tables/champs ?

Vous allez me dire : c'est un CMS. Mais un CMS gère avant tout du texte et d'autres trucs plus ou moins proche avec ou sans extension.

Mais, à l'instar des CMS de e-commerce, puis-je, par exemple, décider que mes articles seront composés de n champs et que l'utilisateur pourra consulter la liste par critères, catégorie, etc.

Exemple simple : je décide de faire un gestionnaire de photo et vidéo. Pour chaque objet, je souhaite :

- indiquer s'il s'agit d'une photo ou vidéo

- mettre sa note moyenne (et donner la possibilité de noter ce produit donc)

- avoir un lien lié à l'objet, par exemple "envoyer à un ami"

- pouvoir ajouter cet objet à une sélection, par exemple "ajouter à mes photos préférées"

- avoir la date, le lieu, l'auteur, le titre, le thème

Ainsi, je peux proposer une recherche par n'importe quel critère pertinent, faire des rubriques par thème, afficher les objets les plus récents, les mieux notés, etc.

Et avec ce même CMS, je devrais pouvoir également créer un site de recettes de cuisine où mes champs seront la photo du plat, les ingrédients, le temps de réa, le coût, la recette, les commentaires. Avec recherches par critères toujours.

Tout en gardant le confort et fonctionnalités d'un CMS : divers extensions (commentaires, backlinks, SEO, forum, sondage, etc.), sécurité probablement accrue par rapport à une solution maison, administration conviviale...

Alors, ça existe :) ?

Merci.

Lien vers le commentaire
Partager sur d’autres sites

Salut Cébé,

Tu trouvera cette flexibilité avec MODx et grâce à ses fameuses variables de modèles (les TVs).. Je te laisse parcourir ce forum davidm a déjà très bien expliqué ce concept (entre autre) de MODx

L'un des seuls autre CMS à ma connaissance qui propose ce type de fonctionnement est ez publish.

Lien vers le commentaire
Partager sur d’autres sites

Merci. Je me doutais de cette réponse car je m'étais déjà intéressé à MODx il y a 2 ans (la version n'a pas trop bougée, je ne sais pas si les fonctionnalités oui).

Ce qui m'effraie un peu avec MODx (et les purs framwork style Symphony), c'est le temps d'apprentissage. Il n'y a toujours pas de bouquin française à son sujet il me semble.

Lien vers le commentaire
Partager sur d’autres sites

Effectivement l'apprentissage peut paraître assez long mais concernant l'utilisation des concepts clés de MODx cela reste relativement raisonnable. Par contre je te confirme que se mettre à Symfony c'est une autre histoire, il est préférable d'avoir déjà de bons bagages en PHP OOP, notion MVC, et pour ensuite se plonger dans la logique même de Sf. Mais après cet investissent est largement récompensé par les nouvelles perspectives que ces outils t'offrent :)

Modifié par nicoo
Lien vers le commentaire
Partager sur d’autres sites

Bon.

Le concept de MVC, j'ai pas du tout. Celui d'objet, à peine plus...

Ce qui m'a surpris sur Symfony, c'est la lourdeur du code produit. J'ai regardé ce qu'avait pondu des élèves ingé (mines, je crois) pour une boite privé, c'était imbuvable. Pourtant ils s'étaient uniquement basé un tutorial officiel Symfony.

Je vais peut-être tenter MODx dans un premier temps (j'aurais aimé avoir de la bonne doc).

J'avoue que je n'ai jamais encore commencé (hormis une install pour "voir") car j'arrive à tout faire avec mes petites mains. Mais j'espère pouvoir gagner bcp de temps car je facture souvent en dessous du seuil de rentabilité des petites fonctions que l'on me demande (et que je ne réutilise pas forcément).

Lien vers le commentaire
Partager sur d’autres sites

Ce qui m'a surpris sur Symfony, c'est la lourdeur du code produit. J'ai regardé ce qu'avait pondu des élèves ingé (mines, je crois) pour une boite privé, c'était imbuvable. Pourtant ils s'étaient uniquement basé un tutorial officiel Symfony.

Le code de symfony est pourtant très bien structuré, dans chaque application tu as tes modules qui sont eux même sont découpés en action / template / config... c'est une structure qui apporte une grande souplesse et facilite le travail en équipe. Quand au nombre de ligne de code, il faut savoir que Symfony génère toutes les couches indispensables mais au combien rébarbatives à coder : gestion de la sécurité et la validation des formulaires, génération CRUD (create, read update delete), la possibilité de mettre en place des filtres, gestion des tests unitaires... Après c'est clair que Symfony n'est pas pour une faire un site vitrine :)

Je vais peut-être tenter MODx dans un premier temps (j'aurais aimé avoir de la bonne doc).

J'avoue que je n'ai jamais encore commencé (hormis une install pour "voir") car j'arrive à tout faire avec mes petites mains. Mais j'espère pouvoir gagner bcp de temps car je facture souvent en dessous du seuil de rentabilité des petites fonctions que l'on me demande (et que je ne réutilise pas forcément).

Quelles genres de petites fonctions ? En tout cas tu peux commencer par le wiki et commencé par bien comprendre les concepts de MODx (chunck / snippet / variable de modèle...) Mais c'est vrai que c'est un peu la pêche aux infos... N'hésites pas à t'inscrire sur le forum de modx pour poser tes questions.

Lien vers le commentaire
Partager sur d’autres sites

Le code de symfony est pourtant très bien structuré, dans chaque application tu as tes modules qui sont eux même sont découpés en action / template / config... c'est une structure qui apporte une grande souplesse et facilite le travail en équipe. Quand au nombre de ligne de code, il faut savoir que Symfony génère toutes les couches indispensables mais au combien rébarbatives à coder : gestion de la sécurité et la validation des formulaires, génération CRUD (create, read update delete), la possibilité de mettre en place des filtres, gestion des tests unitaires... Après c'est clair que Symfony n'est pas pour une faire un site vitrine :)

Oui, en fait s'il est vrai que je serais ravi de maîtriser Symfony (ou un autre framework aussi puissant), je n'en ai tout simplement pas besoin pour le moment. Le problème, c'est que si j'en ai besoin un jour, il sera trop tard pour l'apprendre :)

Mais je me pose toutefois la question de réaliser de gros projets en PHP : est-ce qu'il n'y a pas d'autres langages plus adaptés ?

Quelles genres de petites fonctions ? En tout cas tu peux commencer par le wiki et commencé par bien comprendre les concepts de MODx (chunck / snippet / variable de modèle...) Mais c'est vrai que c'est un peu la pêche aux infos... N'hésites pas à t'inscrire sur le forum de modx pour poser tes questions.

Je m'étais inscrit il y a 1 ou 2 ans déjà, quand j'étais déjà tenté, mais je n'avais pas eu suffisamment de temps.

Les "petites fonctions" sont des trucs basés sur des bases de données (crud, recherches...), des "envoyer cette page à un ami" avec les vérifs adéquates, des mailing list (par forcément une petite fonction ça, selon ce qu'on souhaite)... bref, ce que l'on trouve souvent dans les CMS.

La seule partie que je n'ai jamais trouvé de bonne qualité sur les CMS, c'est la gestion des stats.

Lien vers le commentaire
Partager sur d’autres sites

Mais je me pose toutefois la question de réaliser de gros projets en PHP : est-ce qu'il n'y a pas d'autres langages plus adaptés ?

Il existe d'autres langages et pour ne citer que ceux qui ont la cote en ce moment : Ruby avec son framework Ruby On Rails et Python avec son framework Django. Après ces langages ne sont pas plus adaptés c'est en fonction éventuellement des contraintes techniques et des affinités ;)

Je m'étais inscrit il y a 1 ou 2 ans déjà, quand j'étais déjà tenté, mais je n'avais pas eu suffisamment de temps.

Les "petites fonctions" sont des trucs basés sur des bases de données (crud, recherches...), des "envoyer cette page à un ami" avec les vérifs adéquates, des mailing list (par forcément une petite fonction ça, selon ce qu'on souhaite)... bref, ce que l'on trouve souvent dans les CMS.

La seule partie que je n'ai jamais trouvé de bonne qualité sur les CMS, c'est la gestion des stats.

Pour les opérations sur des bases de donnée il existe des "mini framework" comme ezsql par exemple peut être que cela te conviendrait. MODx dispose d'une API qui permet de type d'interaction aussi, c'est d'ailleurs pour cela que MODx est considéré comme un CMF (Content Management Framework).

Si le sujet t'intéresse tu peux consulter ces 2 posts :

Quelle est la différence entre un CMS et un CMF ?

Qu'est-ce qui fait de MODx un framework ?

Pour la gestion de mailing list il existe des solutions comme pommo, phplist... Il te faut ensuite trouver une solution pour lier ton outil de mailing au CMS (il existe déjà des solutions à ce besoin récurrent)

Pour la gestion des stats ce n'est pas une fonction à rechercher nativement dans un CMS, il vaut mieux utiliser une application dédiée comme google analitycs ou encore phpmyvistes.

Lien vers le commentaire
Partager sur d’autres sites

Merci pour tes réponses.

Il existe d'autres langages et pour ne citer que ceux qui ont la cote en ce moment : Ruby avec son framework Ruby On Rails et Python avec son framework Django. Après ces langages ne sont pas plus adaptés c'est en fonction éventuellement des contraintes techniques et des affinités ;)

Disons que les "vrais" developpeurs que j'ai connu n'aiment pas PHP. PHP5 est bcp plus mure et PHP6 est surement abouti. Mais il est vrai que Ruby et Python ont leur préférences.

Pour les opérations sur des bases de donnée il existe des "mini framework" comme ezsql par exemple peut être que cela te conviendrait. MODx dispose d'une API qui permet de type d'interaction aussi, c'est d'ailleurs pour cela que MODx est considéré comme un CMF (Content Management Framework).

Si le sujet t'intéresse tu peux consulter ces 2 posts :

Quelle est la différence entre un CMS et un CMF ?

Qu'est-ce qui fait de MODx un framework ?

Merci pour les liens, je vais aller voir.

Je pense avoir déjà utilisé ezsql, ou un équivalent. Mais c'est tout autant l'interface graphique (web) qui me saoule : toujours se taper des formulaires rébarbatifs, etc.

Un exemple de truc que j'ai à faire, là, pour un unique client (que je ne réutiliserai peut-être jamais) : mémoriser les souhaits d'un utilisateur et lorsque une fiche correspond à ces critères (ou ses critères -1), on lui envoie la fiche par mail. Faut se taper l'enregistrement du gars, la concordance fiches-souhaits (ça, on va dire une seule fois par jour), le formattage du mail (bien chiant) et, pour bien faire, tracer son comportement.

Pour la gestion de mailing list il existe des solutions comme pommo, phplist... Il te faut ensuite trouver une solution pour lier ton outil de mailing au CMS (il existe déjà des solutions à ce besoin récurrent)

Pour la gestion des stats ce n'est pas une fonction à rechercher nativement dans un CMS, il vaut mieux utiliser une application dédiée comme google analitycs ou encore phpmyvistes.

Pour les ML, il faut que je puisse avoir un retour des fausses adresses, donc pouvoir traiter les retours pour effacer automatiquement les mauvais email après plusieurs essais. J'avais testé une usine à gaz, phplist justement, qui n'a jamais fonctionné (je mettais des adresses bidons, et je n'avais jamais de répudiation de l'adresse)...

Pour les stats, j'ai testé GA et PMV (pas encore la Piwik) mais aucun n'a de fonction évolué de traçage. Mais bon, ça c'est le moins problématique : je fais mes petits sauces comme ça je fais vraiment ce que je veux et je n'ai pas besoin de belle présentation donc c'est vite fait.

Enfin voilà, ce qui me gave, c'est perdre du temps pour des trucs pas bien compliqué, déjà fait mille fois ailleurs (mais pas par moi), et que je passe 107 ans à faire, vérifier, et surtout rendre présentable !

Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

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



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