Réalisation d'un éditeur de texte pour un CMS maison - HTML/CSS - Programmation
Marsh Posté le 18-05-2010 à 13:30:58
regardes les sources de http://ckeditor.com/. C'est l'un des plus connus.
Edit : autre piste : tu regardes les éditeurs en JS des autres CMS (SPIP, Drupal, Joomla...).
Marsh Posté le 18-05-2010 à 13:36:28
Pour ton CMS maison, si je peux te conseiller de le générer via XSL
Marsh Posté le 18-05-2010 à 13:43:57
rufo a écrit : regardes les sources de http://ckeditor.com/. C'est l'un des plus connus. |
Ouais, j'ai un CMS spip pour l'instant, je regarderai un peu
Pour l'instant je pense que je vais me contenter de mettre en place la structure de mon cms et de mon site, et taper le code à la mano dans mon éditeur de texte. Et puis commencer à zieuter doucement sur le javascripte qui va encore être une nouvelle montagne à gravir
gatsu35 a écrit : Pour ton CMS maison, si je peux te conseiller de le générer via XSL |
oulah, je sais même pas ce que c'est
Je viens de regarder un peu, c'est pour mettre en page du xml.. mais j'ai aps de xml
Ca aurait quoi comme avantage? Et je peux générer un xml à partir de ma base de données j'imagine?
Marsh Posté le 18-05-2010 à 13:52:49
t'as un flux xml et ensuite tu le transforme en ce que tu veux : ihm IHM, feuille d'impression, fichier csv ou pdf... Ca peut s'appliquer quand on fait du MVC : séparation des données et de la mise en forme.
Marsh Posté le 18-05-2010 à 14:04:06
ReplyMarsh Posté le 18-05-2010 à 14:39:56
on s'est mal compris, générer les pages du site avec XSL.
Bon c'est clair que c'est super chiant à gérer quand tu veux juste rajouter un petit caca toussa toussa, mais quand tu as super bien organisé ton dawa c'est tout magique.
J'ai tout un site dans un XML, et je génère les pages via XSL en utilisant PHP (echo du resultat de la transformation). C'est beaucoup plus simple à gérer. Si je veux génerer mes pages sans le header, une simple feuille XSL modifier et je peux générer toutes mes pages de cette maniere \o/
Marsh Posté le 18-05-2010 à 14:40:47
J'avais fait ça au tout début. Mais je suis revenu en arrière, un peu trop lourdingue par moments
Marsh Posté le 18-05-2010 à 14:45:41
Mon site perso est fait comme ça, c'est vrai que c'est pas mal (surtout pour gérer le multi-langues) mais y'a certains trucs pas évident à faire (ça dépend aussi des possibilités de la lib XSLT disponible).
Marsh Posté le 18-05-2010 à 15:06:09
FlorentG a écrit : J'avais fait ça au tout début. Mais je suis revenu en arrière, un peu trop lourdingue par moments |
lourdingue mais simplifie la vie, je compte faire un CMS qui permet de créer des XSL dans les limites du faisables hein
c'est clair que c'est lourdingue, pour un truc qui devait me prendre 2j, j'en mets 5
Marsh Posté le 18-05-2010 à 15:15:28
ça pose aussi le pb des perfs : faire un rendu xml/xsl me semble plus lourd que des echo de code html...
Marsh Posté le 18-05-2010 à 15:22:58
rufo a écrit : ça pose aussi le pb des perfs : faire un rendu xml/xsl me semble plus lourd que des echo de code html... |
et le cache ça te dit rien ?
quand tu as des paquets d'accès sur ton site, tu mets une page en cache toutes les 2 minutes ça sera super rapide.
Marsh Posté le 18-05-2010 à 15:44:35
comment on gère le cache?
C'est quoi concrètement l'avantage du xml du coup?
Marsh Posté le 18-05-2010 à 15:52:42
Citation : |
Marsh Posté le 18-05-2010 à 16:05:08
wizopunker a écrit : comment on gère le cache? |
Avant de créer ma page HTML, j'encode l'url complete en replacant les /, ? et & par - et en virant les accents. s'il y a,
exemple simple :
http://www.monsite.com/?cat=3&page [...] labla=toto
devient :
http-www-monsite-com-cat-3-page-2-blabla-toto
je regarde ensuite si ce fichier existe dans mon dossier cache. S'il existe je check la date, si date today - date fichier > durée max du cache.
je regénère le fichier, sinon je fais un simple readfile.
ah et au final, je n'ai qu'un seul fichier PHP dans mon site, au pire quelques includes de fonction. Et une fonction de generation de page HTML qui prend en entrée une XSL et un XML.
Marsh Posté le 19-05-2010 à 13:31:20
Ok, je viens de me taper pas mal de lecture sur le XLM. Mais je viens juste de comprendre que ça remplace complètement la base de donnée non? Du coup perso ça m'intéresse moins. Alors pour moi c'est php/mysql et javascript pour l'instant
En revanche, l'avantage d'un xml c'est son intégration dans du flash plus tard si je décide de faire un site en flash (toujours pour le fun et l'apprentissage )
Marsh Posté le 19-05-2010 à 13:34:52
wizopunker a écrit : Ok, je viens de me taper pas mal de lecture sur le XLM. Mais je viens juste de comprendre que ça remplace complètement la base de donnée nom? Du coup perso ça m'intéresse moins. Alors pour moi c'est php/mysql et javascript pour l'instant |
ça remplace pas la DB, ça permet juste d'avoir un code propre en sortie et pas des echo dans tous les sens et de mieux controler ce que je fais.
C'est plus chiant à gérer, un peu plus lourd mais c'est power.
Tu peux très bien en sortie de bd, generer un XML puis ensuite le balancer à ta feuille de style.
Marsh Posté le 19-05-2010 à 13:35:26
non, xml ne remplace pas une BD. Faut plus le voir comme un format d'échange entre applications (web en particulier). Qq ex : RSS, SOAP, RDF...
Marsh Posté le 19-05-2010 à 13:47:30
gatsu35 a écrit : |
ok, ça je saisis. Mais pour pondre le xml, il faut bien faire des echo dans ton php non? ou alors j'ai mal saisit certaines fonctions (en n'oubliant pas que je suis débutant ). Enfin à part en ce qui concerne la portativité du contenu, j'ai du mal à saisir l'avantage. Surtout que je comptais sortir du xhtml. Donc à priori ça reste quand même accessible à certaine formes de portabilité je pense..
Bon, ça se sent que j'ai des connaissances mais que je suis méga débutant sur l'emploi des différentes technos
Marsh Posté le 19-05-2010 à 14:02:58
Y'a des libs xml permettant de générer des docs XML biens formés, donc pas d'echo partout (ex : DOM)
Marsh Posté le 19-05-2010 à 14:09:50
wizopunker a écrit : |
Quand je dis en sortie c'est que tu as du code XML dans une variable.
bien sur le xml tu le génère pas comme tu génère du texte, tu utilises une librairie XML pour faire du DOM, sinon c'est un peu dégueulasse.
Marsh Posté le 20-05-2010 à 01:18:47
oulah je suis largué, je vais me chercher de la doc demain ou vendredi
Marsh Posté le 18-07-2010 à 18:58:48
Bon, du coup j'ai pas mal bossé depuis! J'ai pas encore vraiment mis les doigts dans DOM, j'apprends un peu tout et rien pèle-mèle, mais je progresse tout seul comme un grand
Par contre, j'ai un problème complètement débile, j'ai le menu qui décale quand on clique sur un article. Pourtant c'est le même css, et j'ai pas l'impression d'avoir oublié la fermeture d'un div ou un truc du genre, du coup je comprends pas trop trop!
Si vous avez une idée??
Et j'aimerai améliorer les possibilité en référencement. Du coup je prévois de gérer un url rewriting. Et puis il faut que je développe encore un paquet de trucs, ça reste très basique. Mais j'ai déjà beaucoup apris, je suis content
Marsh Posté le 18-07-2010 à 22:40:42
wizopunker a écrit : Par contre, j'ai un problème complètement débile, j'ai le menu qui décale quand on clique sur un article. Pourtant c'est le même css, et j'ai pas l'impression d'avoir oublié la fermeture d'un div ou un truc du genre, du coup je comprends pas trop trop! Si vous avez une idée?? |
Original comme bug (même s'il est logique)
Les 30px de décalage proviennent de la marge haute sur le h2 qui suit.
Code :
|
Pour ton "menu" (je croyais que c'était de la déco, vu qu'il y a des dates à droite et que ton header n'est pas cliquable pour revenir à l'accueil et qu'au survol du menu rien ne se passe pas même une petite bordure basse au survol/focus pour faire genre le lien se souligne ... Il a fallu que je regarde avec Firebug ton code pour comprendre que ces 4 images étaient les 1ers liens de la page donc le menu !), vu que tu te compliques la vie avec du positionnement absolu alors que tu as un div#header tout vide, il est positionné en absolu par rapport à son parent #article et celui-ci subit (fusion des marges) la marge haute du 1er élément qu'il contient et qui soit pas hors du flux (ni flottant, ni positionné en absolu ou fixé, ni caché).
edit : phrase incompréhensible, je réécris demain
Marsh Posté le 18-07-2010 à 23:10:45
hahaha, oui effectivement c'est tout con en fait! Merci, je m'empresse de corriger ça dans la semaine
Le menu je vais encore bosser dessus, ne serait-ce que pour le référencement..
J'avoue avoir encore du mal avec les différentes notions de placement en css, c'est pas toujours évident pour moi. Je commence tout juste à comprendre comment fonctionnent les liens de parenté. Si je comprends bien, c'est mon h2 qui modifie les propriété de son parent (#article) et du coup le menu suit les modification sur #article vu qu'il en est enfant? Piouuuu
J'ai encore pleins de trucs à corriger/finir, le menu en fait partie! Le header cliquable aussi bien évidement. Une interface un peu plus sympa pour les images, une gestion plus efficace de l'affichage de la miniature (genre que ça affiche un gif pendant le chargement, et que si on ressort de l'image avant le chargement elle ne vienne pas s'afficher après )
Et puis j'ai encore des problèmes d'encodage de texte, quand je l'enregistre dans mon mysql il me fout des \ pour échapper le texte.. enfin il me manque pleins de petits trucs à la con encore sur lesquels il faut que je me documente!
Mais merci pour ton aide
Marsh Posté le 18-05-2010 à 13:09:40
Bonjour tout le monde. Première fois que je poste sur prog, c'est un grand moment pour moi
J'ai une question très très bête sans doute, mais je ne sais plus exactement comment rechercher les infos, à cause du type de retour sur les recherches "éditeur de texte".
Je suis en train, pour apprendre à maîtriser php un peu plus convenablement, de me faire un CMS maison. Pour l'instant c'est très basique, je sécurise les pages, je créé des formulaires, j'aloue des droits à différents types de profils, etc etc..
J'arrive bien sûr sans problème à remplir ma base mysql à partir de formulaires (encore heureux hein?). Mais une question se poste pour moi.
A un moment ou un autre, il faudra bien que je réalise un éditeur de texte me permettant de réaliser quelques besoin (insertion de lien, texte en gros, couleurs du texte, comme sur le forum par exemple etc etc..). Et j'imagine que ces fonctionnalités ne seront pas du coté de php, mais plus d'un truc genre javascript?
Donc pour être simple, je recherche des infos, même basiques, sur ces procédés. Je ne recherche pas un truc tout fait. Je tiens vraiment à apprendre personnellement, donc je voulais savoir s'il fallait bien se tourner vers js? Parce que pour l'instant je ne vois pas encore exactement comment réaliser ça..
Merci bien à celui ou ceux qui me trouveront des pistes
EDIT: bon j'suis con, je viens de regarder tout simplement le code source d'hfr. Donc au moins je sais que c'est bien du JS, il va falloir s'y mettre une fois que j'aurais la base de mon cms. Si vous avez des pistes, des bons sites, etc.. J'ai appris les bases du php sur le site du zero, mais ils n'ont pas de section js
Message édité par wizopunker le 18-05-2010 à 13:11:57
---------------
| .:: www.wizopunk-art.com - Développement web ::. |