PDA

Zobacz pełną wersję : Separowanie treści od reszty systemu



utom
10-07-2011, 12:44
Chcę stworzyć trzy wersje serwisu: produkcyjną, testową i rozwojową.

Poszukuję metody, jak wyseparować z serwisu produkcyjngo samą treść. Następnie zasilić nią np. środowisko testowe, na którym zainstalowana jest nowa wersja serwisu. Wówczas mógłbym oddać klientowi do testowania nowy serwis z możliwie najbardziej akutalną treścią.

Takie rozwiązanie miałoby jeszcze kilka innych zastosowań, ale zatrzymajmy się na tym jednym przypadku użycia.

Oczywiście można próbować zrobić to ręcznie, lecz mi zależy na zoptymalizowaniu takiego procesu poprzez użycie jakiegoś rozszerzenia, pakietu itp.

Czy ktoś spotkał się z rozwiązaniem adresującym takie zagadnienie?

Akeeba Backup zdaje się dysponować "jedynie" możliwiścią back-up'u całości lub co najwyżej w wersji Professional cyt. "Exclude components, modules, plug-ins, templates and languages with a single click". Mi tymczasem zależy na opcji "Include content only".:podstep:

Póki co poruszam się jedynie w obszarze J!1.6. Być może za chwilę dojdzie jeszcze temat zasilania serwisów J!1.7 treścią obecnie znajdującą się na J!1.6.

zwiastun
10-07-2011, 14:32
Rozważyłeś dokładnie, co to jest "tylko treść" w Joomla?
Co dokładnie chcesz odseparować i do czego przenosić?
Bo w teoretycznie wyseparowanych klockach to ładnie wygląda.
Treść musi być obsłużona przez pozycje menu i moduły, pozycje menu przez komponenty, itd.
Akeeba Backup daje Ci możliwości włączania/wyłączania z kopii, co chcesz, ale tylko w granicach możliwości. Niemożliwego zrobić się nie da - nie oddzielisz treści od komponentów i modułów, nie oddzielisz od elementów organizujących strukturę.

utom
10-07-2011, 14:54
Dzięki za odpowiedź.

Na szczęście jestem w trakcie edukowania zarówno samego siebie, jak i klienta.

Póki co zaczynamy od rzeczy najbardziej podstawowych, tj.
1) Zainstalowałem środowisko J!1.6.
2) Spolszczyłem je.
3) Usunąłem wszystko, co nie wydawało mi się konieczne do funkcjonowania serwisu. (Włącznie z domyślnymi template'ami. Zostawiłem tylko Atomic.)
4) Podkonfigurowałem SEF, pozycje menu, rozłożenie komponentów.
5) Doinstalowałem kilka rozszerzeń, ale też raczej podstawowych (Phoca Favicon, J!Analytics).
6) Założyłem klientowi konta pozwalające mu samodzielnie tworzyć podstawową teść.
7) Poleciłem klientowi tworzyć póki co jedynie: własną strukturę kategoryzacji artykułów, własne artykuły, własne zdjęcia/grafiki "importowane w Media".

Z grubsza to wszystko.

Zatem w tym układzie "tylko treść" sprowadza się do punktu 7.

Gdy dobrze zorganizuję proces budowy kolejnych wydań, będę na pewno chciał sięgnąć po bardziej zaawansowane rozszerzenia, komponenty, template'y. Wówczas pewnie wróci temat: Co to jest "tylko treść".

Fajnie więc, żeby rozwiązanie było na tyle elastyczne, aby nie wiązało mi rąk, jeśli to nie jest konieczne.

Z odpowiedzi wnioskuję, że wszystkie drogi prowadzą do Akeeba-backup.

bogdanbojarski
11-07-2011, 23:10
Zwiastun ma racje nie oddzielisz "tylko treści od struktury". Na upartego możesz wyeksportować tabele jos_content (dla artykułów), ale ta jest powiązany z innymi ( nie mówiąc już o grafice). Zamian szablonu tez reogranizuje strukturę strony (nowe pozycje modułow itp). Więc chyba jedynym sensownym rozwiązaniem jest akeeba.

utom
12-07-2011, 13:29
Dzięki za odpowiedź.

Uznajmy zatem, że Akeeba jest właściwym rozwiązaniem. Może nawet tandem Akeeba Backup + Content Uploader.

Tu jednak i tak wraca zagadnienie określenia właściwych profili. Domyślny wykonuje niemal full-backup. Ja jednak poszukuję metody odciążającej klienta od konieczności przepisywania treści. Sam też jakoś nie palę się do tego. (Ot, takie konstruktywne lenistwo.:))

Może więc ktoś się podzieli swoimi know-how w tym zakresie.

Trudno by mi było uwierzyć, że ja pierwszy podjemuję tytułowe zagadnienie.

zwiastun
12-07-2011, 13:37
Jeśli udostępniasz klientowi na początek czysty Joomla!, a potem dodajesz elementy strukturyzujące treść i nawigację, to nie ma żadnego prostego rozwiązania i nie ma zbytnio nad czym dumać. Za pomocą AkeebaBackup można wykonać i przyrostową kopię plików (ale samo się nie zrobi), i kopię aktualnej bazy danych. Moim zdaniem prościej to jednak zrobić ręcznie, zwłaszcza, że w takich przypadkach musisz najpierw dokonać ręcznego przeniesienia treści dodanych przez klienta.
Tak w ogóle komplikujesz chyba problem.
W okresie prac nad witryną udostępniasz klientowi wersję "rozwojową" z zastrzeżeniem, że może dodawać treści, nic więcej, i prowadzisz na tej wersji prace wdrożeniowe, aż do momentu, gdy będzie gotowa do publikacji.

utom
12-07-2011, 13:55
Prawie się z Tobą zgadzam.

Istnieje jednak pewne naturalne zjawisko:

Jeśli klient jest zadowolony z tego, co dostał raz, to wraca i prosi o nowe elementy, które np. gdzieś podjerzał. Właśnie takie coś mi się przytrafiło i jestem z tego powodu szczęśliwy, bo to otwiera fajną perspektywę przychodową. Jeśli nie znajdę metody na tytułowe zagadnienie, to przyjdzie mi :
1) albo poprosić klienta, żeby sobie sam przepisał treść (podejrzewam, że popuka się w głowę i zrezygnuje)
2) albo zrobić to za niego, co podniesie moje koszty (co gorsza: wówczas serwis staje się ofiarą swojego sukcesu, gdyż im więcej treści w nim jest tym większe pojawiają się koszty migracji)

Oczywiście jest też trzecia droga: odejść od J! i szukać innego CMS, w którym zarządzanie treścią jest bardziej odseparowane od prezentacji treści i funkcjonalności serwisu. Wierzę jednak jeszcze, że to nie będzie konieczne.

Czy to wyjaśnienie wystarczy, aby uznać, że to nie ja komplikuję problem, lecz że jest to naturalny obszar do zaadresowania albo w systemie J!, albo w rozszerzeniach, albo w rzemiośle administratorskim?