Tworzenie CMS podstrony |
Tworzenie CMS podstrony |
3.07.2014, 14:46:09
Post
#1
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.07.2014 Ostrzeżenie: (0%) |
Witam!
Zainteresowałem się programowaniem PHP ok. 5-6 lat temu, nauczyłem się programować strukturalnie. Po ok roku, zacząłem pisać swój system newsów na bazie MySQL, niestety nie udało mi się go dokończyć zgodnie z założeniami (padł mi laptop i straciłem dane z dysku), ale główne funkcje działały. Teraz wróciłem do nauki tego języka, jestem na etapie nauki programowania obiektowego. Postanowiłem, że do końca wakacji napiszę swój własny CMS. I z tym wiąże się moje pytanie. W jaki sposób generowane są podstrony w CMS'ach? Wiem że działa to na bazie danych, ale nie bardzo rozumiem w jaki sposób są dodawane na podstronie np artykuły, lub mapa strony. Wymyśliłem sobie, że może to działać, poprzez dodawanie odpowiednich "modułów" na podstawie treści dodatkowej kolumny danej podstrony w bazie danych. W głowie mam mniej więcej plan jakby to działało, ale chciałbym mimo wszystko dowiedzieć się w jaki sposób jest to rozwiązane w popularnych CMS'ach, żeby nie iść zbyt okrężną drogą. Pozdrawiam i liczę na pomoc. Ten post edytował mtk3d 3.07.2014, 15:50:24 |
|
|
3.07.2014, 18:33:47
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Ściągnij sobie WordPressa i się pobaw
|
|
|
3.07.2014, 20:39:26
Post
#3
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.07.2014 Ostrzeżenie: (0%) |
W wordpressie da się dodawać tylko czyste strony, a w joomli do podstron można dodawać moduły z tego co pamiętam.
|
|
|
3.07.2014, 20:42:00
Post
#4
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
W WordPressie możesz zrobić wszystko co chcesz praktycznie, tylko czasem trzeba wtyczkę ściągnąć.
Możesz np. zrobić panel do dodawania pasków bocznych i potem z poziomu edytora strony wybierać co ma na nim być. To tylko pomysł na gorąco - możesz robić co tylko wymyślisz |
|
|
3.07.2014, 20:55:36
Post
#5
|
|
Grupa: Zarejestrowani Postów: 532 Pomógł: 24 Dołączył: 15.04.2011 Skąd: Kalisz Ostrzeżenie: (0%) |
Jesli mówisz, że chcesz napisac do końca wakacji system CMS, ale powiedzmy, że rozpoczynasz naukę OOP (długa przerwa) to najlepszym wyjściem jest zaczęcie od projektowania. Najpierw napisz sobie na kartce to, co chcesz by system posiadał. W tym wypadku chcesz by były podstrony, ok. Ale na jakiej zasadzie? Czysty tekst?
W niektórych systemach CMS jest to rozwiązane na zasadzie wtyczki czy komponentu. To ona jest odpowiedzialna za dany typ podstrony. Typów podstron można wymieniać mnogości: artykuł, kategoria, galeria, produkt, kontakt itp. I teraz tak, każdy komponent jest odpowiedzialny za inny typ strony. Tak tak Ty, jesteś w swojej pracy odpowiedzialny za programowanie, nie będziesz zajmował się pisaniem faktur czy sprzątaniem Dalej można to rozwiązać na dwa sposoby: 1. Komponent jest częścią aplikacji samą w sobie. To w nim dzieje się dodawanie, edycja, usuwanie i wszystkie inne opcje danego typu podstrony. Sam system CMS daje tylko szkielet aplikacji dla komponentów, by one mogły działać (Joomla!, WordPress). 2. Komponent daje tylko definicję typu podstrony, czyli to jak ma ona wyglądać, jakie ma mieć pola do wpisania (formularz dodawania artykułu czy produktu), jak ma się zachowywać. A system CMS odpowiedzialny jest w całości za zarzadzanie tymi podstronami w taki sposób, jak zdefiniował to dany komponent. Oczywiście zdaję sobie sprawdę, że są jeszcze inne możliwości, ale takie tylko przyszły mi do głowy. Pierwszy jest o wieeeele łatwiejszy i polecam Ci go. Bo z drugim to staniesz w miejscu na samym początku (bez urazy, początki są trudne zawsze, a gdy się wejdzie na zbyt głęboką wode, to się odechciewa dalszej nauki). Zalety: - Każdy komponent możesz nstalować, usuwać oddzielnie. - Każdy komponent jest odpowiedzialny tylko i wyłącznie za swój typ podstrony. - Każdy komponent jest odpowiedzialny za zarzadzaniej swoimi podstronami, to w nim odbywa się edycja. Możesz ta edycję rozwiązac tak, jak tego w danym miejscu potrzebujesz. Hmm, chyba nie ma wad System CMS obsługiwac powinien podstawowo tylko routing, czyli włączenie danego komponentu na zasadzie tego, co znajduje się w adresie URL. W tedy to gry wchodzi komponent i to on dalej sprawdza co dokłądnie jest w adresie URL i wyświetla daną podstronę, oczywiście za pomocą metod udostępnianych przez system CMSa. Troche się rozpisałem, ale mnie wena twórcza złapała, sam jestem projektantem systemu CMS i mógłbym o tym pisać całymi godzinami Jeśli masz jakieś pytania to wal śmiało. |
|
|
4.07.2014, 07:46:06
Post
#6
|
|
Grupa: Zarejestrowani Postów: 1 597 Pomógł: 30 Dołączył: 19.02.2003 Skąd: Tychy Ostrzeżenie: (0%) |
I z tym wiąże się moje pytanie. W jaki sposób generowane są podstrony w CMS'ach? Wiem że działa to na bazie danych, ale nie bardzo rozumiem w jaki sposób są dodawane na podstronie np artykuły, lub mapa strony. Na Twoim miejscu zainteresowałbym się jakimś frameworkiem, to rozwiązuje duże problemy jak chodzi o architekturę aplikacji. Cytat Wymyśliłem sobie, że może to działać, poprzez dodawanie odpowiednich "modułów" na podstawie treści dodatkowej kolumny danej podstrony w bazie danych. W głowie mam mniej więcej plan jakby to działało, ale chciałbym mimo wszystko dowiedzieć się w jaki sposób jest to rozwiązane w popularnych CMS'ach, żeby nie iść zbyt okrężną drogą. Jak piszesz swój CMS to skupiłbym się na poznaniu co to jest routing, controller i akcja. W warstwie prezentacji view helpery. Nie bazowałbym na takich rozwiązaniach jak wordpress bo kod jest przestarzały, powinni to już dawno przepisać. Ten post edytował sf 4.07.2014, 07:47:45 -------------------- Zapraszam na mój php blog, tworzenie stron.
|
|
|
4.07.2014, 08:26:03
Post
#7
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) |
Na Twoim miejscu zainteresowałbym się jakimś frameworkiem, to rozwiązuje duże problemy jak chodzi o architekturę aplikacji. Jak piszesz swój CMS to skupiłbym się na poznaniu co to jest routing, controller i akcja. W warstwie prezentacji view helpery. Nie bazowałbym na takich rozwiązaniach jak wordpress bo kod jest przestarzały, powinni to już dawno przepisać. Chłopak nie ma nawet pojęcia jak się robi dynamiczne strony php/mysql, a Ty mu mówisz o takich rzeczach |
|
|
4.07.2014, 09:44:29
Post
#8
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
Nie bazowałbym na takich rozwiązaniach jak wordpress bo kod jest przestarzały, powinni to już dawno przepisać. To prawda, kod WordPressa woła o pomstę do nieba, tylko nie mówcie tego fanom WordPressa, bo Was zlinczują. Ja kiedyś dostałem po głowie za to, bo przecież główne hasło WordPressa to "Code is poetry" (LOL) Ale chłopak pyta o to jak to wygląda od strony panelu (ideę), a nie o kod. A tu WordPress radzi sobie dobrze. Ten post edytował SmokAnalog 4.07.2014, 09:45:50 |
|
|
4.07.2014, 13:36:50
Post
#9
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.07.2014 Ostrzeżenie: (0%) |
Na Twoim miejscu zainteresowałbym się jakimś frameworkiem, to rozwiązuje duże problemy jak chodzi o architekturę aplikacji. Właśnie biorę się za poznanie codeigniter'a Chłopak nie ma nawet pojęcia jak się robi dynamiczne strony php/mysql, a Ty mu mówisz o takich rzeczach Po czym wnioskujesz że nie potrafię tworzyć dynamicznych stron? Dziękuję wszystkim za odpowiedzi, jeśli podczas tworzenia będę miał jeszcze jakieś problemy to się zgłoszę. |
|
|
4.07.2014, 13:43:28
Post
#10
|
|
Grupa: Zarejestrowani Postów: 1 707 Pomógł: 266 Dołączył: 3.07.2012 Skąd: Poznań Ostrzeżenie: (0%) |
To nie framework rozjaśni Ci ten problem, tylko CMS.
|
|
|
4.07.2014, 14:05:22
Post
#11
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) |
Po czym wnioskujesz że nie potrafię tworzyć dynamicznych stron? Odp: I z tym wiąże się moje pytanie. W jaki sposób generowane są podstrony w CMS'ach? Wiem że działa to na bazie danych, ale nie bardzo rozumiem w jaki sposób są dodawane na podstronie np artykuły, lub mapa strony. |
|
|
4.07.2014, 14:14:48
Post
#12
|
|
Grupa: Zarejestrowani Postów: 4 Pomógł: 0 Dołączył: 3.07.2014 Ostrzeżenie: (0%) |
Chodziło mi tutaj o to, jak to rozwiązać, aby użytkownik miał możliwość wybierania, czy na danej stronie ma być tylko jego tekst, czy jakiś komponent. Na to być może niezbyt dobrze sformułowane pytanie świetnie odpowiedział adbacz.
|
|
|
4.07.2014, 14:35:06
Post
#13
|
|
Grupa: Zarejestrowani Postów: 859 Pomógł: 177 Dołączył: 29.10.2009 Ostrzeżenie: (0%) |
Chodziło mi tutaj o to, jak to rozwiązać, aby użytkownik miał możliwość wybierania, czy na danej stronie ma być tylko jego tekst, czy jakiś komponent. Na to być może niezbyt dobrze sformułowane pytanie świetnie odpowiedział adbacz. W takim razie zwracam honor i życzę powodzenia przy projekcie. Pozdrawiam |
|
|
Wersja Lo-Fi | Aktualny czas: 5.06.2024 - 18:45 |