paragraph symbol
Elastyczne i wygodne tworzenie treści w Drupalu  - moduł Paragraphs

Tworzenie treści z użyciem modułu Paragraphs to całkowicie odmienne podejście w porównaniu do “standardowego” tworzenia treści w Drupalu.

W skrócie: przygotowujemy komponenty (paragraph type), a następnie przy tworzeniu wpisu wybieramy dowolne z dostępnych komponentów. 

Komponentami mogą być proste elementy z tekstem, zawartości z kolumnami czy też złożone elementy takie jak slidery, video czy galerie zdjęć. Nie ma tu praktycznie ograniczeń, sami możemy zdefiniować dostępne komponenty, które następnie będą wykorzystywać osoby zajmujące się zarządzaniem treścią. 

Dla komponentów możemy przygotować własne szablony (pliki tpl.php). Odpowiednio przygotowane szablony oraz style dla nich zapewnią identyczne wyświetlanie komponentów niezależnie od miejsca ich użycia oraz urządzenia (responsywność).

Jest to znacznie bardziej elastyczne i powtarzalne rozwiązanie od tworzenia podobnych rzeczy w edytorach WYSIWYG, gdzie nie zawsze elementy wyglądają tak jak chcemy, nie mówiąc już o dostosowaniu takiej treści do wersji mobilnych strony.
W efekcie otrzymujemy ładnie sformatowane elementy strony, które są powtarzalne i jednolite w obrębie całego serwisu internetowego.

Paragraphs to duże ułatwienie dla redaktora serwisu internetowego

Nic tak bardzo nie potrafi wyprowadzić z równowagi redaktora strony, jak to, gdy podczas dodawania treści wypełnia ją zdjęciami czy innym elementami, a po zapisaniu cała treść nie wygląda jak podczas edycji.
Próby naprawienia częstą są trudne, czasochłonne i niewygodne (trzeba często dopisywać style w WYSWIG w trybie poglądu źródła). Dla osób nieznających się na HTML i CSS będzie to często problem nie do przeskoczenia. 

Odpowiednio przygotowana konfiguracja modułu Paragraph oszczędza czas osobom zajmującym się zarządzaniem treścią. Mogę one się skoncentrować na treści, czyli na tym czym się powinny zajmować, a nie na formatowaniu tekstów (co powinien robić automatycznie system CMS).

Tworzenie treści z pomocą modułu paragraph

Będąc na stronie z formularzem dodawania treści, zobaczymy listę wyboru z dostępnymi w systemie (zdefiniowanymi przez programistów) typami komponentów.

W jednym wpisie możemy wybierać nieskończenie wiele komponentów (tego samego typu lub różnych typów), a następnie dowolnie zmieniać ich kolejność.

different paragraph types

Poniżej znajdują się przykładowe typy paragrafów.

Slider Slick ze zdjęciami dodawanymi podczas edycji treści

animated gif of slider

A tak wygląda tworzenie slidera - prosta sprawa, wystarczy dodać zdjęcia.

adding photos to slider

Prosty obszar z tekstem

simple text area

Można go dowolnie ostylować i za każdym razem będzie wyglądał tak samo.
Dodatkowo pod każdy paragraf możemy podczepić własną, wcześniej zdefiniowaną klasę ze stylami.

Przykładowo, zmiana koloru tła czy też obrazka będącego tłem to kwestia wyboru odpowiedniej klasy.

adding the predefined class

Obszary wielokolumnowe

Tekst ze zdjęciem

text with photograph

Trzy zdjęcia obok siebie

three photos together

Moduł od strony programisty

Dla programisty obsługa modułu i tworzenie nowych typów paragrafów jest bardzo prosta.
Wszystko robimy z poziomu strony i w większości przypadków cały proces sprowadza się do dodania odpowiednich pól dla danego typu.

W przykładach w tekście, oprócz modułu Paragraphs, wykorzystujemy moduł Classy paragraphs. To dzięki niemu pod wybrany paragraf, możemy podczepić wcześniej zdefiniowane klasy css.

Tworzenie nowego typu paragrafu

Struktura -> Paragraphs types
admin/structure/paragraphs_type

paragraph types added

Po dodaniu paragrafu wystarczy dodać pola. 
Dostępne są wszystkie typy pól znajdujące się w core Drupala jak i te pochodzące z modułów contrib i custom. 

field managment

Gdy już mamy stworzone typy, trzeba je “podczepić” pod encję np. zawartość, blok czy jakąkolwiek inną obsługującą pola.

Powiązanie robimy za pomocą specjalnego pola: Reference revision - Paragraph
W tym przypadku dodaje paragrafy do rodzaju zawartości Page

adding a field

W ustawieniach pola wybieramy, które typy paragrafów chcemy mieć dostępne w danym typie encji. Jeśli nie zaznaczymy nic to dostępne są wszystkie typy.

all types available

Wystarczy zapisać, podczas dodawania treści możemy wstawić dowolny paragraf.

all types available

Dodawanie własnych klas css do paragrafu.

Moduł Classy paragraphs to przydatne narzędzie, jeśli chcemy dać redaktorom możliwość np. zmiany koloru tła danego paragrafu. 

Oczywiście nie musimy się ograniczać do zmiany kolorów. Możesz wdrożyć tutaj wszystko co oferuje css.

Do paragrafu dodaj pole z powiązaniem.

paragraph with addition

Po zapisaniu, jako referencje wybierz Classy paragraph style.

classy field

Na tym etapie to wszystko.
Teraz trzeba zdefiniować klasy by móc je podczepić pod paragraf.
Klasy definiujesz na Struktura -> Classy paragraphs style

styling of classy paragraph

Tutaj zdefiniowane 3 proste klasy służące do zmiany tła.

Ustawienia sprowadzają się do wyboru nazwy klasy. 

Pamiętaj, aby etykieta była zrozumiała dla redaktora, to właśnie ten tekst wyświetli się podczas wyboru.

adding etiquette to classy paragraph

Cała magia dzieje się już w css.

css magic

Od tego momentu redaktor może wybrać daną klasę podczas tworzenia paragrafu.
Jak widzisz na przykładzie, takich pól z klasami może być kilka.

a few of of many class fields

References:

https://www.drupal.org/project/paragraphs
https://www.drupal.org/project/classy_paragraphs
https://dev.acquia.com/blog/drupal-8-module-of-the-week/drupal-8-module-of-the-week-paragraphs/15/03/2016/9881

Porozmawiajmy o Twoich projektach

Napisz do nas!