2012-03-11 15 views
20

Jestem na wczesnym etapie próby uczenia się Orchard i wciąż wydaje mi się, że zmagam się z podstawami jak zbudować stronę zawierającą wiele różnych treści, które mogą być łatwo zarządzane przez użytkowników nietechnicznych.Budowanie witryny za pomocą Orchard CMS

Idealnie, co próbuję zrobić, to: po prostu nie mogę wymyślić, jak dopasować go do architektury Orchard przy użyciu typów zawartości, części, pól, widżetów, stref itd. Również, ponieważ Nadal się uczę, staram się także unikać niestandardowych modułów lub twardych treści kodujących na stronie (chociaż jestem otwarty na pomysł, jeśli to najlepszy sposób, aby to zrobić!).

Cel: Utwórz układ "strony głównej" zawierający menu, pokaz slajdów i kilka opisów funkcji. Do każdego obrazu w pokazie slajdów potrzebny jest tytuł, podtytuł, opis i obraz. Aby ułatwić zarządzanie użytkownikami nietechnicznymi, chciałbym zdefiniować szablon HTML (niestandardowy typ zawartości, część lub cokolwiek innego) i umożliwić autorom określenie tylko tych dobrze zdefiniowanych właściwości. Próbowałem użyć do tego części treści, ale niestety mogę mieć tylko jedną treść części określonego typu w części treści. Zobaczyłem także zalecenia dotyczące tworzenia wielu części treści z tym samym zestawem właściwości, ale nie wiem, ile obrazów będzie wyświetlanych (i nie chcę przypisywać arbitralnej liczby).

Potrzebuję zrobić coś podobnego do opisów funkcji, umożliwiając autorom określenie obrazu, tytułu, opisu i strony, do której ma prowadzić link. Występuje ten sam problem, co powyżej, nie jestem pewien, w jaki sposób zezwolić autorom na określenie skończonej listy treści, ale każdy element treści powinien być dobrze zdefiniowany.

Do tej pory najlepszą opcją wydaje się tworzenie niestandardowego widżetu do "hostowania" treści, ale z jakiegoś powodu, mój gut mówi mi, że tworzenie niestandardowej warstwy dla pojedynczej strony tylko po to, aby określić, która treść wyświetlanie nadużywa celu warstw, które zaczynają dostosowywać określony układ w oparciu o pewne kryteria (na przykład uwierzytelnianie użytkownika lub nie).

Mam nadzieję, że to ma sens, i przepraszam, że zabrało mi to wiele słów, aby wyjaśnić mój problem, właśnie osiągnąłem szczyt frustracji i chociaż myślę, że faceci z Orchardu definitywnie to zrozumieli w kategoriach architektury, po prostu nie mogę ominąć tych pozornie prostych problemów, aby zbudować prostą stronę.

Bardzo doceniam wszelkie wskazówki, sugestie, porady, które ta społeczność ma do zaoferowania!

TIA, -Jeremy

+2

"Ponieważ wciąż się uczę, staram się również unikać niestandardowych modułów": to byłby błąd. Moduły to cała kwestia. –

+1

@BertrandLeRoy Doceniam twój wgląd i z tego, co przeczytałem, twój komentarz ma doskonały sens. Powinienem był powiedzieć: "Unikam tworzenia niestandardowych modułów, aby osiągnąć funkcjonalność, która jest dostępna natychmiast po wyjęciu z pudełka". – jeremyalan

+0

Ma sens, to zdecydowanie nie było to, co zrozumiałem. –

Odpowiedz

32

To, co zdefiniowano w Orchard to rodzaj zawartości o nazwie Funkcja.

  • Przejdź do Spis treści -> Rodzaj zawartości i kliknij Utwórz.
  • wybrać te części fabrycznie:
    • tytułem, ponieważ chcesz, aby autorzy zapewnić piękny tytuł/nazwę funkcji
    • Autoroute, które stworzą SEO friendly URL w oparciu o tytule (można dostosować)
    • Kliknij Zapisz
  • Dodaj konkretnych dziedzinach
    • napisów, typu TextField. Skonfiguruj go jako domyślny, wymagany.
    • Opis typu TextField. Skonfiguruj go do aplikacji TextArea, wymagane.
    • Obraz typu selektora mediów. Skonfiguruj go do Wymagane.
  • Możesz dodać kilka wskazówek do każdego pola, które będą wyświetlane w edytorze operacji, aby opisać, co wpisać w każdym polu. Bardzo przydatne dla autorów.

Teraz możesz tworzyć funkcje, klikając link w lewej górnej części pulpitu. Kolejnym krokiem jest umieszczenie tych funkcji na stronie głównej. Proponuję stworzyć Projekcję, która zostanie ustawiona jako strona główna. Projekcja to tylko strona z adresem URL, która wyświetla wynik zapytania jako jego treść. Zapytanie w twoim przypadku będzie brzmiało "Daj mi wszystkie funkcje uporządkowane według daty utworzenia".

  • W panelu kliknij na kwerendach
  • Kliknij „Utwórz nową kwerendę”
  • Enter „Wszystkie funkcje”
  • kliknij „Dodaj nowy filtr”
  • Wybierz typ zawartości, następnie wybierz Feature, Zapisz
  • Kliknij na „Dodaj kryterium sortowania”
  • wybierz „Data utworzenia”, a następnie malejącym Zapisz

W tym momencie można już wyświetlić podgląd wyniku zapytania, klikając opcję Podgląd. Ale chcemy tylko strony front-end.

Utwórz nową projekcję, klikając opcję Projekcja w sekcji "Nowy" pulpitu (ponownie u góry po lewej) - Nadaj mu tytuł i nie zapomnij zaznaczyć opcji "Ustaw jako stronę główną", aby była to strona główna - Wybierz jedyne dostępne zapytanie o nazwie "Wszystkie Featru" - Zapisz

Na stronie głównej powinny być widoczne wszystkie funkcje uporządkowane według daty. Ale potrzebujesz suwaka. W tym momencie trzeba dwa kolejne etapy: - włączenie suwak jQuery plugin renderowanie - HTML zgodny z jQuery plugin

Domyślnie podczas renderowania projekcja będzie używać standardowego „Podsumowanie” układ. Ale korzystając z rzutów, możesz zdecydować, który układ chcesz zastosować, i jakie tagi i klasy html.

  • Edycja kwerendy o nazwie „Wszystkie funkcje”
  • Dodaj nowy układ
  • Wybierz HTML listy
  • „Właściwości”
  • wybrania i zapisania
  • Kliknij Dodaj Właściwości
  • Wybierz wyświetlacz tekstowy, Zapisz
  • Zrób to samo dla
    • Feature: SubTitle
    • Cecha: Opis
    • Cecha: Obraz
  • Zapisz zapytanie
  • Edycja projekcji strona główna i wybierz ten specyficzny układ zamiast domyślnego.

Zobaczysz, że każda właściwość jest renderowana w kontenerze html.

Edytując każdą właściwość, można zdecydować, którą klasę zastosować i który znacznik html należy użyć. Zmieniając je, możesz renderować dokładnie to, co chcesz, i dostosować swój CSS/HTML, aby ładnie wyświetlić suwak. To jest tylko twój HTML, który musisz znać tutaj, lub znajdź kilka artykułów na ten temat.

Dla edytorów wystarczy, że przejdą do deski rozdzielczej i dodadzą/zaktualizują niektóre elementy treści funkcji, zostaną one odzwierciedlone na stronie internetowej.

Opcjonalnie w Galerii Orchard znajduje się moduł suwaka. Możesz też spróbować tego. Ale jeśli chcesz dokładnie opisać, co się dzieje, technika, którą opisałem, jest lepsza.

+0

Świetna sugestia. Myślę, że albo Listy, albo Prognozy działałyby dobrze, ale korzystanie z Projektów zdecydowanie wydaje się oferować nieco więcej mocy i elastyczności w zarządzaniu treścią. – jeremyalan

+0

długie pytania, długie odpowiedzi! :)) – Jalal

+1

Nice! Taką odpowiedź należy dodać do dokumentacji Orchard :) –

1

Właśnie przeszedł taką scenariuszu siebie. Myślę, że to, czego chcesz, można osiągnąć za pomocą list sadowniczych. UX nie jest dokładnie intuicyjny dla użytkownika końcowego, ale wydaje się, że jest to najprostszy sposób na osiągnięcie tego celu bez instalowania/rozwijania modułu niestandardowego.

Po pierwsze, upewnij się, że korzystasz z Orchard 1.4, ponieważ potrzebujesz wbudowanej obsługi generowania alternatyw dla Widżetów kontenerów dla każdej strefy. Włącz moduły: Shape tracing, Url alternates i.

Teraz utwórz listę przedmiotów zgodnie z opisem w dokumentacji (patrz http://docs.orchardproject.net/Documentation/Creating-lists). Przetłumacz "recenzję książki" na "slajdy" i "recenzje książek" na "slajdy", a otrzymasz pomysł. Możesz dodać niestandardowe pola do reprezentowania napisów, opisów itd. Zachowałbym obrazek jako część samej treści, zamiast tworzyć dla niej niestandardowe pole.

Jeśli wykonałeś kroki opisane w dokumentacji, powinna pojawić się teraz lista slajdów przedstawionych jako ul/li.Teraz będziesz chciał dostosować sposób renderowania obiektów, aby móc wyświetlać niestandardowe pola i ogólnie dostosowywać tagi. Użyj znacznika kształtu i utwórz listę zastępczą dla listy zgodnie z oczekiwaniami. Teraz możesz kontrolować cały rendering. Aby uzyskać pomysły, zobacz http://weblogs.asp.net/bleroy/archive/2011/03/27/taking-over-list-rendering-in-orchard.aspx i http://weblogs.asp.net/bleroy/archive/2011/05/23/orchard-list-customization-first-item-template.aspx.

Zarządzanie tą listą z perspektywy użytkownika końcowego jest w rzeczywistości dość łatwe, ale nie wydaje mi się, aby było to bardzo intuicyjne.

Zajęło mi trzy dni kopania przez blogi i dokumenty, aby dowiedzieć się tego sam.

+0

Dzięki, wygląda na bardzo obiecującą! Musiałem przeoczyć tę funkcję w dokumentacji, na pewno przyjrzę się temu i zobaczę, czy mam więcej szczęścia. – jeremyalan

+0

Chciałem to udostępnić każdemu, kto był zainteresowany, sprawdź dyskusję na temat tego pytania. Wygląda na to, że Projektor jest lepszym, szybszym i silniejszym zamiennikiem funkcji Listy. – jeremyalan

+0

Nice. Projektor zdecydowanie wydaje się być czystszym rozwiązaniem tego problemu. – Ragesh

1

Polecam również ten wspaniały moduł o nazwie Featured Item Slider. Posiada wszystkie podstawowe funkcje pokazu slajdów, w tym wszystkie wymienione w pytaniu, a także kilka fantastycznych dodatkowych możliwości, takich jak różne animacje. Możesz także dostroić układ i stylizację, zapewniając dodatkowe css. Uzyskaj źródło here. I here to pokaz slajdów w akcji. Jeśli moduł już istnieje, zapewniając funkcjonalność, której szukasz, najlepiej jest użyć tego zamiast odkrywać nowe koło, chyba że zrobisz to w celach edukacyjnych.

Powiązane problemy