Piszę to pytanie, ponieważ widzę zamieszanie w całej społeczności Drupal na temat „czym jest Page manager” i „czym jest panele”.
źródło
Piszę to pytanie, ponieważ widzę zamieszanie w całej społeczności Drupal na temat „czym jest Page manager” i „czym jest panele”.
Ctools
W Ctools istnieje podmoduł o nazwie „Menedżer stron”. Ten moduł, w swej istocie, jest graficznym interfejsem użytkownika do hook_menu . Pozwala ci albo tworzyć nowe ścieżki w systemie, albo przejąć niektóre z tych dostarczonych przez Core.
Menedżer stron
Gdy menedżer stron zarządza za Ciebie ścieżką, może z nią zrobić kilka różnych rzeczy. Po wyjęciu z pudełka może zapewniać przekierowania. Jednym z typowych przypadków użycia tego jest odmowa dostępu do węzłów, które nie mają odpowiedniego motywu, ponieważ nie są przeznaczone do samodzielnego przeglądania, takich jak „Fakty” lub „Węzły obrazów”. Innym jest przekierowanie z widoku terminu do wyszukiwania Solr tego samego terminu.
Jedną z głównych zalet Menedżera stron jest to, że wprowadza sposób radzenia sobie z „Kontekstem”, którego nie należy mylić z Kontekstem modułu . Kickerem tutaj jest to, że Panele, które są „nieco mądrzejszymi blokami”, mogą zadeklarować swoje zależności w systemie, i przekazują im rzeczywiste argumenty (zwane Kontekstami) w stylu wstrzykiwania zależności .
Dla tych, którzy nie są zaznajomieni z DI, ale znają Drupala, pozwala to na przykład nigdy więcej nie używać menu_get_object, aby uzyskać „Ten jedyny węzeł, do którego odwołuje się ścieżka menu”. Co jeśli na ścieżce jest więcej niż jeden węzeł? A jeśli naprawdę chcesz oprzeć blok na węźle z odwołania do encji? Staje się to problemem w przypadku Menedżera stron, dzięki czemu wszystkie bloki (panele) są znacznie bardziej elastyczne i można je ponownie wykorzystywać.
Panele
Najczęstszym przypadkiem użycia jest jednak przekazanie układu i renderowania ścieżki do paneli . Panele zapewniają narzędzia do definiowania układów, zarówno w kodzie, jak i bezpośrednio w przeglądarce, a także umożliwiają umieszczanie treści bezpośrednio w przeglądarce.
Wniosek
Oba te moduły są bardzo wydajne i stosunkowo słabo udokumentowane, co doprowadziło wiele osób do sfrustrowania ich. Zrozumienie, jak z nich korzystać to jednak warto, jeśli budujesz powiększeniu miejsce, zwłaszcza, że ich podejście do obsługi „stron”, a także układ, wygląda jak idą do Drupal 8 rdzeniu, dzięki uprzejmości EclipseGC „s inicjatywy SCOTCH . Odpowiedni projekt piaskownicy
Dalsza lektura
Przykłady innych interesujących rzeczy, które można zrobić za pomocą tych narzędzi:
$page_data = page_manager_get_current_page()
tam, gdzie są pieniądze, szczególnie$page_data['handler']
W Drupal 7 program Page Manager był podstawą paneli modułu .
„ Learn Page manager ” to ciekawy (i niesamowity) zestaw filmów. Zawierają różne tematy związane z modułem Panele . Oto podsumowanie całego zestawu filmów na ten temat (cytat z linku powyżej):
Zobacz Wyjaśnianie paneli: przegląd dla programistów Drupala aby uzyskać inne świetne wyjaśnienie dotyczące modułu paneli.
Przyszłość programu Page Manager
W Drupal 8 Page Manager stał się oddzielnym modułem, podczas gdy poprzednio (aż do Drupal 7), był częścią modułu CTools . Oto kilka cytatów ze strony projektu (związanej z D8):
źródło