PDA

Zobacz pełną wersję : Dlaczego zarządzanie treścią w Joomla jest głupie i co zrobić, żeby to zmienić...



nailee
21-02-2006, 07:53
Poniższy post napisałem wcześniej na forum Mambo, co nie było dobrym pomysłem, bo w odpowiedzi dostałem tylko, że Mambo nie jest już rozwijane :)

Z drugiej strony racja - epoka Mambo chyba już się skończyła, teraz jest pora na Joomla (Joomle?), a ponieważ jej także dotyczy opisany poniżej problem i związana z nim propozycja to wklejam temtego posta na to forum licząc na odzew :)

--

Nie, wcale nie uważam, że Joomla to zły system CMS. Wręcz przeciwnie - Joomla to mój ulubiony CMS. Mam na koncie 10 wdrożeń tego systemu na różnego typu stronach, przeważnie firmowych.
Ale do rzeczy...
No właśnie, podczas wszystkich tych wdrożeń powoli doszedłem do wniosku, że logika zarządzania treścią w Joomla jest po prostu głupia.

Bo niby dlaczego dwupoziomowy podział zawartości (sekcje, kategorie) jest logiczny? Wcale nie jest. Żeby stworzyć nowy dział serwisu trzeba dodać nową sekcję, do niej dodać jedną kategorię, a do tej kategorii wstawić jeden artykuł.
Można inaczej - wstawić artykuł statyczny udający dział i podlinkować do niego w menu głównym witryny.
To jeszcze nie jest tak źle. Ale gdy np. trzeba stworzyć stronę z 4 działami, z których 2 mają mieć jeszcze po kilka poddziałów.
I żeby to wszystko było na stronie przejrzyste i łatwe do nawigacji i do administracji przez panie z działu marketingu, które zwykle nie mają nawet opanowanych podstaw Worda... No nie jest to proste zadanie.

Pół biedy, gdyby można było przypisać artykuł bezpośrednio do sekcji. Ale nie można. Trzeba w sztuczny sposób tworzyć kategorie. To nie jest logiczne, to nie jest czytelne dla zarządzającego stroną. Widać to w niemal każdym serwisie opartym na Joomla/Mambo. Jest dział serwisu. Klikam i mam nadzieję, że otrzymam interesujący mnie materiał. A tu nie. Trzeba kliknąć raz jeszcze (kategoria).

Dlaczego nie można rozbudowywać struktury strony w dowolny sposób - hierarchicznie? Marzy mi się, żeby można było stworzyć dowolne drzewo kategorii i do każdej gałęzi tego drzewa przypisać dowolną ilość artykułów.

Technicznie to nie jest tak skomplikowane. Dowolne zarządzanie kategoriami jest nawet w kilku fajnych komponentach (Virtuemart - dawniej Mambo Phpshop, ComBookmarks czy inne, Docman).
Dlaczego nie jest w samym Joomla? Przecież to najbardziej logiczny sposób budowy treści każdego serwisu internetowego.

Dlatego mam propozycję dla wszystkich programistów Joomla. Nie czekając na rozwój oficjalnej dystrybucji zróbmy nową, lepszą wersję. Dajmy użytkownikom możliwości takie jak napisałem wyżej.
Stwórzmy polski odłam Joomla, który - jeśli się uda - będzie Najlepszym Systemem CMS Na Świecie http://mambopl.net/forum/style_emoticons/default/smile.gif Niech powstanie polskie Joomla SE.

Teoretycznie myślałem, żeby do problemu podejść w ten sposób:

Wziąć podstawową dystrybucję Joomla.
Wyrzucić z niej całkowicie pojęcie sekcji. Operować tylko kategoriami.
Nadać każdej kategorii dodatkowe pole w tabeli bazy danych: "parent_id".
W edycji kategorii dodać dodatkowe pole wyboru "kategoria nadrzędna".

I to wszystko. Już możemy sobie w łatwy sposób budować strony o dowolnej strukturze.
Teraz trzeba to tylko napisać :)

Co Wy na to? Zapraszam do dyskusji, uwag i krytyki.

Dylek
21-02-2006, 08:20
Masz racje. Sam ostatnio borykalem sie z identycznym problemem i koniec konczow zalatwilem to umieszczajac artykuly w dodatkowych sekcjach/kategoriach. Ale szukajac czegos za rok do aktualizacji pewnie bede musial robic to od frontu, bo w panelu admina nie znajde...
Z drugiej strony jednak nie wierze zebys byl prekursorem tego trendu zwiekszania ilosci kategorii. Chociazby idac tropem komponentow pod MAmbo, gdzie byly jakies dotyczce wlasnie tego problemu (solar-cos-tam). Nie wierze rowniez ze developerzy Mambo/Joomla tego nie slyszeli od uzytkownikow CMSa. Zakladam wiec, ze w ktorejs z przyszlych wersji jest szansa na zmiane tego - co oczywiscie nie znaczy, ze nie ma powstac Joomla SE.
PS. MAmbo zyje i ma sie niezle - nowa wersja tez bedzie ;)

nailee
21-02-2006, 10:33
No właśnie - ja też nie wierzę, że pierwszy na to wpadłem :)
Przecież dowolne drzewo kategorii to pierwsze co się nasuwa, jeśli chodzi o funkcjonalność Joomla. Tym bardziej, że zrobienie tego - jak mi się wydaje - wcale nie jest trudne.
Na razie jednak nie widziałem takiej pozycji w planach rozwoju.
Dlatego ten post.
W wolnej chwili pobawię się z tym i być może już wkrótce będzie dystrybucja Joomla SE :) Jednak miałem nadzieję, że pomysłem zainteresuję kogoś jeszcze, bo wiadomo - razem to sprawniej i szybciej.

Dylek
21-02-2006, 10:41
Zycze zdrowia :)
Poza mala grupa ludzi, ktorzy skupiaja sie wokol joomla.pl (wraz z tworcami serwisow nalezacych do czlonkow tej grupy) jest tylu chetnych do pomocy, ze Ci wystarczy palcow jednej dloni do ich zliczenia.
Ale trzymam kciuki :)

zwiastun
22-02-2006, 03:13
Miło zajrzeć do grona niewierzących.

Oczywiście, że ograniczenie związane ze strukturą zawartości jest zespołowi projektantów znane. Efekt dawniejszych założeń.
Realizujący swego czasu Mambo, a dziś Joomlę, zespół planował, że - wówczas - Mambo 5.0 - nie będzie miało ograniczenia, na które narzekacie. Bo w istocie jest to pewne ograniczenie.
W przypadku Joomli! tego rozwiązania spodziewać się pewno będzie można w Joomla 2.0, a może w 1.3, bo niezbyt jasne jest, co CoreDev ma na myśli, zapowiadając w tej właśnie wersji pełną kontrolę nad zawartością.

Wybitni polscy programiści, oczywiście, wcale nie muszą czekać, aż jakiś tam zespolik zza wielkich wód zrobi wreszcie porządny system zarzadzania zawartością, zwłaszcza, ze mają już ogromny wkład (wybitni polscy programiści, oczywiście) w rozwój tego systemu.


Na marginesie

Widać to w niemal każdym serwisie opartym na Joomla/Mambo. Jest dział serwisu. Klikam i mam nadzieję, że otrzymam interesujący mnie materiał. A tu nie. Trzeba kliknąć raz jeszcze (kategoria).

A kto powiedział, że trzeba - od razu można zrobić odnośnik do kategorii.

Na trochę innym marginesie proponuje obejrzeć komponent Portfolio, gdzie takie rozwiązanie praktycznie jest zastsowane (pomijam, na ile udane).

I gwoli dopełnienia:
Pod adresikiem wyglądającym dzis już tak http://mamboxchange.com/projects/solarutils/ można pobrać dość bogaty zestawik opisany w języku ichnim słowami: Useful support modules including a flexable hierarchical categories system, a statistics collection modules, and modifications to the existing categories system to allow global/shared categories (initially for content). Examples included.
Przeznaczony dla Mambo 4.5.2.3.

Komponent SolarCategories umożliwia tworzenie wielopoziomowych kategorii. Nowe funkcje isAdmin, mosBindObjectToObject, object2array umożliwiają określanie typu struktury kategorii. Istnieje możliwość dodawania - sugerowania kategorii przez użytkowników.
Nowa tzw. kategoria globalna, modyfikacja komponentów należących do rdzenia (com_categories, com_menus, com_content.
To skrótowa, tym razem polska charakterystyka, którą tak z pięć miesięcy temu publikowałem na www.joomlademo.pl (http://www.joomlademo.pl) (wówczas pod nieco inną nazwą).

PS Nie, żebym nie wierzył w polskich programistów. Ale jak na razie, to w sprawach Joomli, a wcześniej Mambo, pochwalić się za bardzo czym nie mają!

Ems
30-04-2006, 15:54
Pracowałem na CMSie który spełniał założenia postulowane przez nailee (podawało się 'rodzica' danej strony i dopisywało 'dzieci', ponadto była też kontrolka 'szablon', czyli po naszemu template).

Jedna rzecz, na którą trzeba było zwrócić uwagę - to kwestia ilości kliknięć od home do strony docelowej (położonej najniżej w hierarchii) - czasem strona - rodzic nie zawierała własnej treści, tylko pełniła rolę "zwrotnicy" (jedyny napis, jaki sensownie można było wprowadzić na takiej stronce, to było: 'to jest kategoria 'nasze produkty', wybierz z menu po lewej jaki produkt cię interesuje').

Dlatego trzeba było wstawić nowy typ strony 'redirect to first child' - czyli stronę obecną w strukturze, ale niewidoczną dla użytkownika. Po kliknięciu na nią człowiek znajdował się na np. pierwszym produkcie z danej kategorii.

Drobny problem pojawiał się w momencie, gdy w menu był przycisk "wstecz", czy "w górę" - jak zwał tak zwał. Bo przejście w górę z np. strony pierwszego produktu oznaczało przejście na stronę przekierowującą na... pierwszy produkt.

Więc trzeba było dopisać jakieś "if" (if twój rodzic ma typ 'redirect to first child', przycisk 'w górę' przekierowuje na rodzica twojego rodzica) ;)

Pozdrawiam
Ems

PS. Są 3 rodzaje architektury CMS: oczywista, nauczalna, zła.
Na szczęście joomla choć do oczywistych nie należy, to złą też nie jest ;)

emQ
10-07-2007, 19:05
Zycze zdrowia :)
Poza mala grupa ludzi, ktorzy skupiaja sie wokol joomla.pl (wraz z tworcami serwisow nalezacych do czlonkow tej grupy) jest tylu chetnych do pomocy, ze Ci wystarczy palcow jednej dloni do ich zliczenia.
Ale trzymam kciuki :)

No cóż - wydaje mi się, że z chęciami do pomocy może być troszkę inaczej...
Joomla jest tak sympatyczna, że pozwala ludziom o małej wiedzy z tego zakresu (jak np. ja) stworzyć ciekawe witryny www. Oczywiście możemy to robić dzięki wkładowi pracy tych "palców jednej dłoni". DZIĘKI.
Takim jak ja pozostaje parzenie kawki i donoszenie piwa ;)... A chętnie bym pomógł...

Mirek