Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Własny CMS
seba199696
post 5.03.2012, 22:06:11
Post #1





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 4.01.2011

Ostrzeżenie: (20%)
X----


Witam smile.gif Zamierzam napisać własny CMS głównie chodzi mi o:

-Download
-Aktualności z możliwością dodawania przez użytkowników z uprawnieniami
-Galerie
-Artykuły
-Porady
-Kontakt
-Parę własnych pod stron do wypełnienia
-Kontakt

Użyję PDO a co do template SMARTY?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 14)
kiler129
post 6.03.2012, 02:15:44
Post #2





Grupa: Zarejestrowani
Postów: 566
Pomógł: 35
Dołączył: 21.06.2006

Ostrzeżenie: (0%)
-----


Z praktyki dam Ci jedną złotą radę: zanim napiszesz choćby linijkę kodu porządnie rozplanuj sobie całość, najlepiej na kartce papieru. Rozrysuj powiązania i rozważ jakie technologie gdzie użyjesz.
Co do smarty to osobiście użyłbym czegoś lżejszego (w ostatnich dniach była dyskusja w tym dziale dot. własnie szablonów).


--------------------
flexiCMS v2 [|||||||+--] 75% done
Go to the top of the page
+Quote Post
!*!
post 6.03.2012, 07:36:18
Post #3





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(kiler129 @ 6.03.2012, 02:15:44 ) *
Z praktyki dam Ci jedną złotą radę: zanim napiszesz choćby linijkę kodu porządnie rozplanuj sobie całość, najlepiej na kartce papieru.


A jak już to zrobisz, rozrysuj to sobie jeszcze raz, bo zapewniam Cie że nie będzie to dobre wink.gif jak już będziesz miał całość, obadaj co jakiś czas wydajność. Co do komponentów które dobierasz, to zależy od zastosowania samego CMSa i to jak go piszesz czy obiektowo z możliwością dodania modułów, czy zastosujesz jakiś wzorzec projektowy, czy scentralizujesz konfigurację i wiele innych czynników...


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
viking
post 6.03.2012, 08:46:35
Post #4





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

Ostrzeżenie: (0%)
-----


A nie lepiej wykorzystać już gotowy projekt i ewentualnie go dopasować bardziej pod swoje potrzeby? Bo skoro pytasz co zrobić, PDO wymieniłeś jak jakąś magiczną właściwość to raczej mała jest Twoja wiedza. Na początek rozejrzyj się za jakimś frameworkiem (Zend, Symfony) i na jego podstawie zbuduj resztę. Opanowując większy projekt będziesz miał do podglądu dobrze napisany kod, sposoby komentowania, pewne wzorce których inaczej się nie nauczysz. Dadzą Ci też nowe narzędzia pracy, zobaczysz jak działa MVC, poznasz budowę mpdułową gdzie np z wymienionych galeria czy dział download może być takim modułem.

Ten post edytował viking 6.03.2012, 08:54:59


--------------------
Go to the top of the page
+Quote Post
!*!
post 6.03.2012, 09:02:06
Post #5





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(viking @ 6.03.2012, 08:46:35 ) *
A nie lepiej wykorzystać już gotowy projekt i ewentualnie go dopasować bardziej pod swoje potrzeby?


A czy lepiej poprawia Ci się cudzy kod? Dopasujesz, może i dopasujesz, ale weź np. taki wordpress zacznij optymalizować pod względem wydajności. Jak chce pisać własny CMS, to niech to robi, nawet jakby miał być pisany strukturalnie to popieram, bo się dzięki temu uczy. To ta jak z pisaniem ściągi w szkole wink.gif


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
Brick
post 6.03.2012, 12:58:49
Post #6





Grupa: Zarejestrowani
Postów: 107
Pomógł: 9
Dołączył: 16.02.2004
Skąd: Kraków

Ostrzeżenie: (0%)
-----


Popieram przedmówcę: niech zacznie pisać coś prostego, strukturalnie, samodzielnie. Z wykorzystaniem prostych formularzy, tabelek. To najlepsza nauka czyli przez działanie.
Jak zacznie od frameworków, MVC, dogłębnej analizy i projektowania struktury to zostawi to za chwilę i pójdzie na piwo ;-)
Zacząć od najprostszego ale co jakiś czas podglądając lepsze rozwiązania.


--------------------
Wszystko należy robić najprościej jak się da, ale nie prościej
Albert Einstein
Go to the top of the page
+Quote Post
MGraphics
post 6.03.2012, 12:59:38
Post #7





Grupa: Zarejestrowani
Postów: 29
Pomógł: 2
Dołączył: 2.03.2012
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Powiedzmy sobie szczeże, że aby napisać wartościowego CMS-a trzeba mieć naprawde duże zaplecze informacji z dziedziny programowania.
Niby wszystkie projekty satysfakcjonują programistów którzy je napisali, ale jedna osba i POWAZNY CMS jak dla mnie jest nie możliwe.

Pozdrawiam
Go to the top of the page
+Quote Post
!*!
post 6.03.2012, 13:25:14
Post #8





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(MGraphics @ 6.03.2012, 12:59:38 ) *
Niby wszystkie projekty satysfakcjonują programistów którzy je napisali, ale jedna osba i POWAZNY CMS jak dla mnie jest nie możliwe.


Niby dlaczego nie? Zresztą, pokaż mi poważny CMS, to tak jakbyś chciał udowodnić istnienie smoków. Ilu programistów, tyle opinii o jakimś kodzie, dlatego powstają własne rozwiązania. A ilość programistów nie ma znaczenia.


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
MGraphics
post 6.03.2012, 15:39:31
Post #9





Grupa: Zarejestrowani
Postów: 29
Pomógł: 2
Dołączył: 2.03.2012
Skąd: Częstochowa

Ostrzeżenie: (0%)
-----


Cytat(!*! @ 6.03.2012, 13:25:14 ) *
Niby dlaczego nie? Zresztą, pokaż mi poważny CMS, to tak jakbyś chciał udowodnić istnienie smoków. Ilu programistów, tyle opinii o jakimś kodzie, dlatego powstają własne rozwiązania. A ilość programistów nie ma znaczenia.


W mojej wypowiedzi szczególną uwagę zwracam na wydajność, poprawność, bezpieczeństwo. Mało jest programistów, którzy świadomie kładom na to nacisk.
Go to the top of the page
+Quote Post
!*!
post 6.03.2012, 16:41:16
Post #10





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

Ostrzeżenie: (0%)
-----


Cytat(MGraphics @ 6.03.2012, 15:39:31 ) *
W mojej wypowiedzi szczególną uwagę zwracam na wydajność, poprawność, bezpieczeństwo. Mało jest programistów, którzy świadomie kładom na to nacisk.


To już jest zupełnie inna para kaloszy. Prawda to że samemu ciężko jest rozważyć wiele możliwości (bo ile można gadać do siebie i bazgrać na kartce;)), to nie oznacza że nie jest to do zrobienia. Jednak osoby które pytają o coś na forum, wątpię żeby rzucały się od razu do pisania całego zaplecza jakie udostępniają niektóre FW. Bezpieczeństwo przyjdzie z czasem, choćby podczas pisania takiego CMSa.


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
seba199696
post 6.03.2012, 17:48:46
Post #11





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 4.01.2011

Ostrzeżenie: (20%)
X----


Czyli mogę moduły zrobić tak?

w pliku index.php

  1. include("xxxxx.php");
  2. $module = 'xxxxx.tpl';
  3.  
  4. $smarty->assign('namemodule',$module);
  5. $smarty->display('index.tpl');


i w pliku index.tpl

  1. {include file=$namemodule}
Go to the top of the page
+Quote Post
adbacz
post 6.03.2012, 18:42:55
Post #12





Grupa: Zarejestrowani
Postów: 532
Pomógł: 24
Dołączył: 15.04.2011
Skąd: Kalisz

Ostrzeżenie: (0%)
-----


Niedawno sam zaczałem pisać CMS. Z założenia miałbyć pochodna Joomla, ale bardziej rozudowaną z programistycznego punktu widzenia. Chodziło o to, zeby można było zewrzeć w systemie duzo komponentów i modułów. Żeby ich pisanie pod FW tego CMSa było przyjemne i sprowadzało się do pisania kontrolerów, modeli i widoków. No i tak tez to działa. Nie musimy wiedziec nic na temat działania wnetrza aplikacji, piszemy to co chcemy i (powinno) działa.

Ja moduły rozwiązałem tak, że są to pojedyńcze klasy PHP (oczywiście współgrające z klasą językową), które sa wywoływane w danym momencie, podczas renderowania widoku. Czyli, klasa GlobalVariables posiada metogę modulePosition($name), gdzie $name to nazwa pozycji, i podczas renderowania, w miejsca gdzie zostanie wywołana ta metoda, zostaną wstrzyknięce dane, które zwróci dany moduł.

Oczywiście jeszcze do tego wszystkiego jest zaprzęgnięta baza danych (tworzenie miliona modułów z udziałem jednej klasy [pliku]), no i (przynajmniej u mnie tak jest), instancja klasy modułu tworzona jest raz, ale gdy powiedzmy w DB znajduje się 5 takich samych modułów, 5 razy jest uruchamiany moduł z innymi paramertami. On już sobie tam robi wszystko co chce, aplikacja czeka tylko, aż on zwróci stringa. Wsio.. wink.gif
Go to the top of the page
+Quote Post
seba199696
post 6.03.2012, 21:31:52
Post #13





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 4.01.2011

Ostrzeżenie: (20%)
X----


Cytat(seba199696 @ 6.03.2012, 17:48:46 ) *
Czyli mogę moduły zrobić tak?

w pliku index.php

  1. include("xxxxx.php");
  2. $module = 'xxxxx.tpl';
  3.  
  4. $smarty->assign('namemodule',$module);
  5. $smarty->display('index.tpl');


i w pliku index.tpl

  1. {include file=$namemodule}


mogę to tak zrobić?
Go to the top of the page
+Quote Post
PiotrekM
post 6.03.2012, 21:42:43
Post #14





Grupa: Zarejestrowani
Postów: 130
Pomógł: 6
Dołączył: 20.12.2009

Ostrzeżenie: (0%)
-----


Cytat(seba199696 @ 6.03.2012, 21:31:52 ) *
mogę to tak zrobić?

jeżeli tego pragniesz z całego serca, to owszem smile.gif
Go to the top of the page
+Quote Post
seba199696
post 6.03.2012, 21:47:30
Post #15





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 4.01.2011

Ostrzeżenie: (20%)
X----


hahah dzięki smile.gif
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 01:08