Eget costum CMS system - struktur/opbygning?

Tags:    mysqli mysql php xlm cms

Hej :)

Til fremtidige brug vil jeg lave mit eget content manager system, hvor jeg som tiden går, hele tiden skal kunne udvide med særlige/specielle funtkioner. Derfor skal jeg nu lave basale ting. Jeg vil bruge mysqli og php.

Men jeg ved ikke helt, hvordan jeg skal bygge det op. Har læst lidt på xml og sitemagic CMS. Jeg ved ikke om man kunne bruge en slags controller til at styre det.

- Spørgsmålet er egentligt, hvordan man kunne lave et system, hvor: hvis brugeren trykkede fx på et link i overmenuen eller undermenuen eller et tredje fast link, så vil der blive hentet en fil og evt. indhold til titel tagget, descritopn-tagget osv.

Gav det mening?

På forhånd tak for hjælpen :)



10 svar postet i denne tråd vises herunder
4 indlæg har modtaget i alt -6 karma
Sorter efter stemmer Sorter efter dato
Hvordan bygger man et system - hvordan bygger man et hus - hvordan bygger man en bil osv.?!

Jeg tror du er bedst tjent med at kigge på et framework. Her er masser at tage af. Zend, CakePHP, Symfony2, CodeIgniter, Kohana, osv. Disse er skrevet efter velkendte patterns, så som MVC (C'et er den controller du leder efter), Observer, Commander, Strategy og en lang række andre patterns.
Vælg et framework og byg så dit system og funktioner oven på dette.


Men jeg forstår ikke din tilgang. :) Du driver en webshop, der bygger på en færdigt system. Det system har om noget andet, taget i hvert fald hele år at udvikle. Så kigger du under motorhjelmen på dette, kan du se at det kræver ufattelig mange linjer kode, og rigtig meget tid!

Nu vil du så skrive dit eget CMS. Det er helt fint at du vil dette, og klart en vej at gå, hvis man vil forstå hvordan systemer virker. Vil du derimod sælge og tjene penge, brug de værktøjer der findes, og lær at bruge disse. Der er bl.a. Joomla, Sitemagic, MODx, Wordpress, Concrete5, Magento, OpenCart, Prestashop osv. for blot at nævne et par stykker.



Indlæg senest redigeret d. 18.12.2012 19:17 af Bruger #10216
Well det lugter lidt af NIH syndrome :) nå spøg til side

Hvis du gerne vil lave dit eget CMS, så skal du ha noget planlægning igang vil jeg mene.

hvad skal det kunne?

fil/mappe struktur? her kan jeg klart anbefale at du kigger på freemind gratis lille program til mindmapping osv.

Interface ?, WYSIWYG eller bare en textBox uden fancy funtioner?






Hej Jacob
Som Mikkel siger er det en god idé at vide nøjagtigt hvordan man vil have sit CMS. Jeg er selv igang med et lignende projekt i php og mysqli og jeg har bygget et simpelt system med basal indholdsstyring via database og så har jeg bygget et modulsystem, hvor man med "normal" php-kode kan lave ekstra funktioner, som kan aktiveres/deaktiveres som man har lyst/behov til. En god mappe-struktur kunne være en mappe til det administrative, en mappe til inkluderede filer(php include), samt mappe til billeder, stylesheets og javascript.



Der er nogle ting du skal tænke over.

1: Hvad er formålet? Hvad vil du opnå? Tjene penge eller få erfaring med at skrive dit eget CMS?

2: Hvorfor? Hvorfor vil du lave dit eget, hvad er formålet med dit eget som du ikke kan løse med eks. Wordpress.

3: Hvorfor skal kunden købe dit? Faktisk vil langt de fleste kunder IKKE købe noget du selv har lavet. Kunder kan godt lide at have frihed til at vælge leverandør, det betyder at de typisk vælger Wordpress, Joomla, Drupal, Umbraco osv. fordi så kan de altid finde nogle andre til at lave deres side. Hvis de køber dit er det kun dig som kan lave det - det er usikkert og der er ikke mange som gider det!

4: Det handler ikke om kode! Når kunder køber en hjemmeside er de fløjtende ligeglade med om det er php, asp eller lign. De køber en hjemmeside fordi de ikke selv vil lave den og træffe de valg. De vil have sikkerhed for fremtiden og værdi for pengene. De er ligeglade med om du kan brygge kaffe med administrationsmodulet eller om du har lavet en fed algoritme. Det handler om penge - tid er penge - teknik er ikke penge.



Jeg tror det ville gavne dig mere at specialisere dig i eksempelvis Wordpress eller Joomla.
De eksisterende CMS-systemer er i så konstant udvikling at man ikke selv ene mand kan tilbyde samme brugeroplevelse, sikkerhed og fleksibilitet.

Wordpress kan du udvide ligesom det passer dig med egne udviklede moduler, og det tror jeg er meget værd at kunne (:



Jeg har tidligere været igennem diverse cms-systemer. Pointen er egentligt, at jeg at bare skal have et cms system, hvori, der er nogle funktioner, som jeg kan tage op i hatten, når jeg laver en hjemmeside. Wordpress og lignende, kan ikke rigtigt hjælpe mig, hvis jeg skal lave andet, end et forum, blog, webshop osv.

Jeg vil helst lave det selv - jeg ved bare ikke helt hvordan jeg skal lave frontend controlleren. :)



Har du prøvet at kigge på Drupal endnu :) ?

Jeg har selv fundet, dette rimeligt simpelt at implementere, og hvor man som du siger kan tage funktionaliteter op af hatten, hvis man har behov for bestemte funktionaliteter :)



Så ikke lige dit indlæg Michael.

Denne webshop er lavet for at få kendskab til prestashop og er ikke som sådan lavet for at tjene penge :)

Jeg synes bare, at jeg efterhånden hat sat mig ind i mange forskellige open source systemer uden at jeg har fundet et, der lige følger mit hoved. Derfor vil jeg gerne udvikle et for min egen skyld - jeg prøver derfor at følge dit råd at finde et framework :)





Tak for jeres svar.

Efter jeres gode feedback, har jeg vist fået mig tænkt til, hvordan det skal laves.

Det er desuden udelukkende til eget brug og for at få erfaring :)



$coreXhtmlFrameTop = <<<header
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="da-dk" lang="da-dk">
<head>
</head><body><header /><section><map style="" id="" title="">
<table class="" align="center" border="0" cellpadding="0">
<tbody title="">
<tr valign="top">
<td style="height:720px; width:1000px;">
<div style="position:absolute;" />
<article>
<p style=";">
header;
$inlineContentAdministrator = $_REQUEST['formFromPage'];
$coreXhtmlFrameBottom = <<<footer
</p>
</article>
</td>
</tr>
</tbody>
</table></map></section><footer /></body>
</html>
footer;
echo $coreXMmlFrameTop . '<!--Validate and Model xhtml-->' . inlineContentAdministrator . '<!--end this, end do, end die-->' coreXhtmlFrameBottom;



t