Drupal 7. Zaawansowane programowanie
- Autorzy:
- Todd Tomlinson, John K. VanDyk
- Promocja Przejdź
- Wydawnictwo:
- Helion
- Ocena:
- 4.2/6 Opinie: 13
- Stron:
- 528
- Druk:
- oprawa miękka
- Dostępne formaty:
-
PDFePubMobi
Opis książki: Drupal 7. Zaawansowane programowanie
Opanuj niesamowite możliwości tego CMS-a i twórz rozbudowane witryny oraz aplikacje internetowe!
- Poznaj architekturę Drupala i sposób jego działania
- Naucz się pracować z bazą danych i API formularzy
- Twórz własne moduły i rozszerzaj możliwości tego systemu
- Zobacz, jak optymalnie wykorzystać jQuery w Drupalu
Drupal to nie tylko kolejny, nieco lepszy od innych CMS. Ten system zarządzania treścią zrobił ostatnio oszałamiającą karierę jako doskonały framework do tworzenia wszelkiej maści aplikacji internetowych. Dzięki niezwykłej łatwości i szybkości, z jaką Drupal pozwala programistom tworzyć rozbudowane blogi, profesjonalne witryny korporacyjne czy serwisy społecznościowe, zainteresowanie tą technologią zaczęło dynamicznie wzrastać. Co więcej, choć już dziś wydaje się, że sposoby wykorzystania tego CMS-a ogranicza jedynie ludzka wyobraźnia, system jest wciąż intensywnie rozwijany przez liczną społeczność entuzjastów na całym świecie. Możliwość czerpania z ogromnych zasobów wiedzy tysięcy programistów poprawi jakość Twoich nawet najbardziej wyrafinowanych internetowych projektów.
Jeśli chcesz tworzyć nowoczesne, rozbudowane witryny internetowe z wykorzystaniem Drupala 7, właśnie znalazłeś idealny podręcznik dla siebie! Omówiono tu wszystko, co będzie Ci potrzebne, począwszy od podstawowych zagadnień, takich jak architektura i struktura plików systemu, przez sposoby wykorzystania API formularzy czy dodawania własnych modułów w celu rozszerzania możliwości, aż po metody tworzenia bezpiecznego, wydajnego kodu. Dowiesz się więcej na temat pracy z bazą danych, uruchomienia własnej strony wyszukiwarki oraz korzystania z jQuery w Drupalu. Nauczysz się także sprawnie optymalizować Drupal i przeprowadzać skuteczne testy oraz poznasz wiele innych praktycznych zagadnień, które sprawią, że bez trudu zrozumiesz zasady działania tego CMS-a oraz pokonasz wszelkie problemy napotykane w trakcie pracy.
Z tej książki dowiesz się między innymi:
- jak działa Drupal i jaką ma architekturę
- jak tworzyć dodatkowe, funkcjonalne moduły
- jak pracować z bazą danych i API formularzy
- jak wygląda obsługa użytkowników, segmentów i pól
- jak przechowywać dane w sesjach
- jak zapewnić wyszukiwanie i indeksowanie informacji
- jak wykorzystać jQuery w Drupalu
- jak tworzyć czysty, bezpieczny kod
- jak optymalizować działanie Drupala
- jak przeprowadzić efektywny proces testowania
Todd Tomlinson - przez piętnaście lat zajmował się projektowaniem, rozwijaniem, wdrażaniem i konserwacją zaawansowanych rozwiązań internetowych. Pracował m.in. w Oracle Corporation jako specjalista od opracowywania planów strategicznych pod kątem najlepszego wykorzystania możliwości Internetu. Todd uwielbia Drupal, który jest przez niego wykorzystywany jako główne narzędzie do tworzenia przyjemnych dla oka i funkcjonalnych witryn. Jest autorem książki "Drupal 7. Od podstaw".
John K. VanDyk jest starszym architektem aplikacji webowych w Lullabot — firmie zajmującej się szkoleniami i konsultingiem Drupala. Wcześniej był analitykiem i adiunktem na Stanowym Uniwersytecie Naukowo-Technicznym w Iowa (USA). Na swoim koncie ma już jedną książkę na temat tego CMS-a: "Pro Drupal Development. Second Edition".
Wybrane bestsellery
-
Niniejsza książka poświęcona jest najnowszej wersji tej platformy, oznaczonej numerem 7. Stanowi ona kompletny przewodnik, dzięki któremu poznasz kroki konieczne do uruchomienia oraz skonfigurowania Twojej własnej strony WWW, opartej na Drupalu. W trakcie lektury nauczysz się tworzyć treści na st...(0,00 zł najniższa cena z 30 dni)
22.45 zł
44.90 zł(-50%) -
Drupal 8 brought a release cycle that allows for new functionality to be added at a much faster pace. This extends into the new shiny Drupal 9 release. However, this also means code deprecations and changing architecture that you need to stay on top of. This book updates the previous editions and...
Drupal 9 Module Development. Get up and running with building powerful Drupal modules and applications - Third Edition Drupal 9 Module Development. Get up and running with building powerful Drupal modules and applications - Third Edition
-
Drupal 8 comes with a release cycle that allows for new functionality to be added at a much faster pace. However, this also means code deprecations and changing architecture that you need to stay on top of. This book updates the first edition and includes the new functionality introduced in versi...
Drupal 8 Module Development. Build modules and themes using the latest version of Drupal 8 - Second Edition Drupal 8 Module Development. Build modules and themes using the latest version of Drupal 8 - Second Edition
-
Drupal is an open source content management system trusted by governments and organizations around the globe to run their websites. It brings with it extensive content authoring tools, reliable performance, and a proven track record of security. The community of more than 1,000,000 developers, de...
Mastering Drupal 8. An advanced guide to building and maintaining Drupal websites Mastering Drupal 8. An advanced guide to building and maintaining Drupal websites
-
If you’re a web programmer, your experiences have taught you certain lessons—and only some of them apply well to Drupal. Drupal has its own set of programming principles that require a different approach, and many programmers make mistakes when relying on skills they’ve used for...
Programmer's Guide to Drupal. Principles, Practices, and Pitfalls. 2nd Edition Programmer's Guide to Drupal. Principles, Practices, and Pitfalls. 2nd Edition
(0,00 zł najniższa cena z 30 dni)101.15 zł
119.00 zł(-15%) -
Drupal 7. Kurs video. Poziom drugi. Zaawansowane moduły, skórki i patche wprowadzi Cię w świat większych możliwości, jakie daje Drupal. Dzięki nowym modułom szybciej, wydajniej i sprytniej stworzysz nowy projekt. Świat rozwiązań opartych na drupalowej błękitnej kropelce stanie się dla Ciebie przy...
Drupal 7. Kurs video. Poziom drugi. Zaawansowane moduły, skórki i patche Drupal 7. Kurs video. Poziom drugi. Zaawansowane moduły, skórki i patche
(0,00 zł najniższa cena z 30 dni)27.60 zł
69.00 zł(-60%) -
Podczas pięćdziesięciu dziewięciu lekcji kursu video, które dla Ciebie przygotowaliśmy, wykonasz stronę internetową, jakiej nie powstydziłby się żaden webmaster. Nasz ekspert podpowie, jak odpowiednio przygotować projekt, które moduły warto zainstalować, by uatrakcyjnić witrynę, oraz jakie narzęd...
Drupal 7. Kurs video. Poziom pierwszy. Szybkie tworzenie stron internetowych Drupal 7. Kurs video. Poziom pierwszy. Szybkie tworzenie stron internetowych
(0,00 zł najniższa cena z 30 dni)27.60 zł
69.00 zł(-60%) -
If you want your Drupal website to work well on smartphones, tablets, and desktops, this practical guide shows you how to incorporate Responsive Web Design (RWD) with specific Drupal 7 themes. You’ll learn how to create attractive, easy-to-navigate layouts for everything from tiny phone scr...
Responsive Theming for Drupal. Making Your Site Look Good on Any Device Responsive Theming for Drupal. Making Your Site Look Good on Any Device
(0,00 zł najniższa cena z 30 dni)59.42 zł
69.90 zł(-15%) -
Drupal’s theme layer, and the themes that use it, are responsible for the look and feel of a Drupal web site. Themes have the final say and ultimate control over almost every aspect of each page. Good themes consist of all the same elements that you would find on any reputable web site, in...
Instant Premium Drupal Themes. Learn how to create visually stunning themes to add the wow factor to all of your Drupal sites! with this book and Instant Premium Drupal Themes. Learn how to create visually stunning themes to add the wow factor to all of your Drupal sites! with this book and
-
How can you help your Drupal website continue to perform at the highest level as it grows to meet demand? This comprehensive guide provides best practices, examples, and in-depth explanations for solving several performance and scalability issues. You’ll learn how to apply coding and infras...
High Performance Drupal. Fast and Scalable Designs High Performance Drupal. Fast and Scalable Designs
(0,00 zł najniższa cena z 30 dni)135.15 zł
159.00 zł(-15%)
Ebooka przeczytasz na:
-
czytnikach Inkbook, Kindle, Pocketbook, Onyx Boox i innych
-
systemach Windows, MacOS i innych
-
systemach Windows, Android, iOS, HarmonyOS
-
na dowolnych urządzeniach i aplikacjach obsługujących formaty: PDF, EPub, Mobi
Masz pytania? Zajrzyj do zakładki Pomoc »
Audiobooka posłuchasz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP3 (pliki spakowane w ZIP)
Masz pytania? Zajrzyj do zakładki Pomoc »
Kurs Video zobaczysz:
-
w aplikacji Ebookpoint na Android, iOS, HarmonyOs
-
na systemach Windows, MacOS i innych
-
na dowolnych urządzeniach i aplikacjach obsługujących format MP4 (pliki spakowane w ZIP)
Recenzje książki: Drupal 7. Zaawansowane programowanie (2)
Poniższe recenzje mogły powstać po przekazaniu recenzentowi darmowego egzemplarza poszczególnych utworów bądź innej zachęty do jej napisania np. zapłaty.
-
NetWorld Piotr Kociatkiewicz, 10/2011
Książka krok po kroku wprowadza w świat programowania w Drupalu, poczynając od podstaw, tworzenia modułów, plików, korzystania z haków, a kończąc na testowaniu. Wyjaśnia sposoby tworzenia systemów menu, łączenia się z bazami danych i efektywnego obsługiwania użytkowników. Wprowadza w tematykę obsługi treści i przetwarzania formularzy, a także wykorzystywania standardowej wyszukiwarki Drupala. Prezentuje metody udostępniania plików i organizacji sesji PHP. Przekazuje informacje na temat tworzenia aplikacji z jQuery, służącej do wyszukiwania elementów w dokumencie. Opisuje dobre praktyki programistyczne zapewniające tworzenie bezpiecznego kodu, jego optymalizację i testowanie. Każde opisane w książce zagadnienie jest jasno zdefiniowane i ilustrowane listingiem kodu. Pozwala to wykorzystać już istniejące rozwiązania i pomysły. Czytelnik, pisząc własną aplikację, może z kodu skorzystać, przyspieszając w ten sposób pracę nad programem.
-
Computer Arts
Jeśli chcesz tworzyć nowoczesne, rozbudowane witryny internetowe z wykorzystaniem Drupala 7, właśnie znalazłeś idealny podręcznik dla siebie! Omówiono tu wszystko, co będzie Ci potrzebne, począwszy od podstawi zagadnień, jak architektura i struktura plików systemu, przez sposoby wykorzystania API formularzy czy dodawania własnych modułów w celu rozszerzania możliwości, aż po metody tworzenia bezpiecznego, wydajnego kodu. Dowiesz się więcej na temat pracy z bazą danych, uruchomienia własnej strony wyszukiwarki oraz korzystania z jOuery w Drupalu. Nauczysz się także sprawnie optymalizować system CMS, przeprowadzać skuteczne testy i poznasz wiele innych praktycznych zagadnień.
Szczegóły książki
- Tytuł oryginału:
- Pro Drupal 7 Development
- Tłumaczenie:
- Krzysztof Rychlicki-Kicior
- ISBN Książki drukowanej:
- 978-83-246-3367-8, 9788324633678
- Data wydania książki drukowanej:
- 2011-09-26
- ISBN Ebooka:
- 978-83-246-3840-6, 9788324638406
- Data wydania ebooka:
-
2011-11-23
Data wydania ebooka często jest dniem wprowadzenia tytułu do sprzedaży i może nie być równoznaczna z datą wydania książki papierowej. Dodatkowe informacje możesz znaleźć w darmowym fragmencie. Jeśli masz wątpliwości skontaktuj się z nami sklep@helion.pl.
- Format:
- 168x237
- Numer z katalogu:
- 6872
- Rozmiar pliku Pdf:
- 7.4MB
- Rozmiar pliku ePub:
- 8.3MB
- Rozmiar pliku Mobi:
- 16.8MB
- Pobierz przykładowy rozdział PDF
- Przykłady na ftp
Ebook zawiera materiały dodatkowe, które możesz pobrać z serwera FTP - link znajdziesz na stronie redakcyjnej.
- Erraty / Zgłoś erratę
- Kategorie:
Technologie webowe » Drupal
Spis treści książki
- Czym jest Drupal? (25)
- Stos technologii (25)
- Rdzeń (26)
- Interfejs administratora (26)
- Moduły (27)
- Haki (27)
- Skórki (28)
- Segmenty (28)
- Pola (29)
- Bloki (29)
- Układ plików (29)
- Obsługa żądania (31)
- Zadania serwera WWW (31)
- Proces rozruchu (bootstrap) (32)
- Przetwarzanie żądania (32)
- Wyświetlanie danych (32)
- Podsumowanie (32)
- Tworzenie plików (33)
- Implementacja haka (35)
- Dodawanie ustawień charakterystycznych dla modułu (36)
- Tworzenie własnej sekcji administracyjnej (42)
- Wyświetlanie formularza ustawień (43)
- Walidacja ustawień wysłanych przez użytkownika (44)
- Przechowywanie ustawień (45)
- Tabela variables w akcji (45)
- Wczytywanie wartości za pomocą funkcji variable_get() (46)
- Co dalej? (46)
- Podsumowanie (47)
- Jak działają zdarzenia i wyzwalacze? (49)
- Działania w praktyce (51)
- Interfejs użytkownika wyzwalaczy (51)
- Twoje pierwsze działanie (52)
- Przypisywanie akcji (53)
- Zmiana wyzwalaczy wywołujących działanie (53)
- Kontekst a działania (58)
- Przygotowanie kontekstu przez moduł wyzwalaczy (58)
- Modyfikacja działań przy użyciu funkcji action_info_after() (59)
- Określanie kontekstu (59)
- Metody przechowywania działań (61)
- Tabela actions (61)
- Identyfikatory działań (61)
- Bezpośrednie wywołanie działania przy użyciu metody actions_do() (62)
- Tworzenie własnych wyzwalaczy przy użyciu hook_trigger_info() (62)
- Dodawanie wyzwalaczy do istniejących haków (65)
- Podsumowanie (67)
- Mapowanie wywołań zwrotnych (69)
- Mapowanie adresów URL na funkcje (69)
- Tworzenie elementu menu (71)
- Argumenty wywołań zwrotnych strony (74)
- Wywołania zwrotne strony w innych plikach (75)
- Dodawanie łącza do bloku Nawigacja (76)
- Zagnieżdżanie menu (77)
- Kontrola dostępu (78)
- Lokalizacja i dostosowanie (80)
- Tworzenie wywołania zwrotnego tytułu (80)
- Znaki wieloznaczne w elementach menu (81)
- Podstawowe znaki wieloznaczne (81)
- Znaki wieloznaczne i parametry wywołań zwrotnych strony (82)
- Korzystanie z wartości dopasowanej przez znak wieloznaczny (82)
- Znaki wieloznaczne a zamiana parametrów (82)
- Przekazywanie dodatkowych argumentów do funkcji ładowania (84)
- Specjalne argumenty ładowania: %map i %index (84)
- Tworzenie ścieżek na podstawie znaków wieloznacznych z wykorzystaniem funkcji to_arg() (85)
- Znaki wieloznaczne i funkcja to_arg(): przypadki specjalne (85)
- Zastępowanie elementów menu w innych modułach (86)
- Zastępowanie hiperłączy menu w innych modułach (87)
- Rodzaje elementów menu (87)
- Typowe zadania (89)
- Przypisywanie wywołań zwrotnych bez dodawania hiperłączy do menu (89)
- Wyświetlanie elementów menu jako zakładek (89)
- Ukrywanie istniejących elementów menu (91)
- Korzystanie z menu.module (91)
- Typowe błędy (91)
- Podsumowanie (92)
- Określanie parametrów bazy danych (93)
- Jak działa warstwa abstrakcji bazy danych? (94)
- Łączenie się z bazą danych (94)
- Wykonywanie prostych zapytań (95)
- Pozyskiwanie wyników zapytań (97)
- Pobieranie pojedynczej wartości (97)
- Pobieranie wielu wierszy (97)
- Twórca zapytań i obiekty zapytań (97)
- Pobieranie ograniczonego zbioru wyników (98)
- Stronicowanie wyników zapytań (98)
- Przykłady typowych zapytań (99)
- Modyfikacje rekordów za pomocą funkcji drupal_write_record() (100)
- API schematów (101)
- Plik .install a schematy (101)
- Tworzenie tabel (101)
- Wykorzystywanie modułu schema (103)
- Mapowanie typów pól schematów na typy pól bazy danych (104)
- Deklarowanie wybranych typów kolumn za pomocą funkcji mysql_type (106)
- Zarządzanie tabelami (108)
- Usuwanie tabel przy deinstalacji modułu (108)
- Zmiana istniejących schematów za pomocą funkcji hook_schema_alter() (109)
- Zmiana zapytań istniejących w innych modułach za pomocą haka hook_query_alter() (110)
- Obsługa wielu baz danych w Drupalu (110)
- Tabele tymczasowe (112)
- Tworzenie własnego sterownika bazy danych (112)
- Podsumowanie (113)
- Obiekt $user (115)
- Sprawdzanie stanu logowania użytkownika (116)
- Wprowadzenie do haków użytkownika (116)
- Sposób działania funkcji hook_user_view($account, $view_mode) (118)
- Proces rejestracji użytkownika (120)
- Zbieranie informacji o użytkownikach za pomocą modułu profile.module (122)
- Proces logowania (123)
- Dodawanie danych do obiektu $user w momencie ładowania (124)
- Kategorie informacji o użytkownikach (125)
- Logowanie zewnętrzne (126)
- Podsumowanie (129)
- Segment - co to takiego? (131)
- Nie wszystko jest segmentem (133)
- Tworzenie modułu segmentu (133)
- Tworzenie pliku .install (134)
- Tworzenie pliku .info (136)
- Tworzenie pliku .module (136)
- Udostępnianie informacji o rodzaju zawartości (136)
- Zmiana wywołań zwrotnych menu (137)
- Tworzenie uprawnień zależnych od typu segmentu za pomocą haka hook_permission() (138)
- Ograniczenie dostępu do typu segmentu za pomocą haka hook_node_access() (139)
- Dostosowywanie formularza segmentów do naszego typu segmentu (139)
- Walidacja pól za pomocą haka hook_validate() (140)
- Zapisywanie danych za pomocą haka hook_insert() (141)
- Aktualizowanie danych i interakcja z hakiem hook_update() (141)
- Usuwanie segmentów za pomocą haka hook_delete() (142)
- Modyfikowanie segmentów naszego typu za pomocą haka hook_load() (142)
- Hak hook_view() (142)
- Modyfikowanie segmentów, które nie należą do naszego typu za pomocą haków w postaci hook_node_xxxxx() (144)
- Sposób przechowywania segmentów (145)
- Tworzenie typu segmentu z własnymi typami zawartości (147)
- Ograniczanie dostępu do segmentów (147)
- Określanie uprawnień do segmentów (147)
- Proces obsługi dostępu segmentów (149)
- Podsumowanie (149)
- Tworzenie rodzajów zawartości (151)
- Dodawanie pól do rodzaju zawartości (153)
- Tworzenie własnego pola (156)
- Dodawanie pól z poziomu kodu (164)
- Podsumowanie (167)
- Skórki (169)
- Instalacja gotowej skórki (169)
- Tworzenie skórki (170)
- Plik .info (176)
- Dodawanie obszarów do skórki (176)
- Dodawanie do skórki plików CSS (176)
- Dodawanie skryptów języka JavaScript (177)
- Dodawanie ustawień do skórki (177)
- Pliki szablonów - co, gdzie, jak (179)
- Zarys ogólny (179)
- Plik html.tpl.php (181)
- Przesłanianie plików szablonów (188)
- Pozostałe pliki szablonów (191)
- Przesłanianie skórkowalnych elementów (192)
- Przesłanianie plików szablonów (194)
- Dodawanie i modyfikowanie zmiennych szablonu (195)
- Moduł twórcy skórek (196)
- Podsumowanie (196)
- Czym jest blok? (197)
- Opcje ustawień bloków (199)
- Rozmieszczenie bloków (199)
- Tworzenie bloku (200)
- Wykorzystywanie haków bloku (202)
- Tworzenie bloku (202)
- Włączanie bloku w zainstalowanych modułach (207)
- Przykłady widoczności bloków (208)
- Wyświetlanie bloku tylko dla użytkowników zalogowanych (208)
- Wyświetlanie bloku tylko dla użytkowników anonimowych (208)
- Podsumowanie (208)
- Przetwarzanie formularzy (209)
- Rozpoczęcie procesu (211)
- Określanie tokenu (211)
- Określanie ID (211)
- Pobieranie dostępnych definicji elementów formularza (211)
- Poszukiwanie funkcji walidacji (212)
- Poszukiwanie funkcji wysyłania formularza (212)
- Modyfikowanie formularzy przed ich utworzeniem (213)
- Tworzenie formularzy (213)
- Modyfikowanie formularzy po ich utworzeniu (213)
- Sprawdzenie, czy formularz został wysłany (213)
- Poszukiwanie funkcji skórki dla formularza (213)
- Modyfikowanie formularzy przed renderowaniem (214)
- Renderowanie formularza (214)
- Walidacja formularza (214)
- Wysyłanie formularza (215)
- Przekierowanie użytkownika (215)
- Tworzenie prostych formularzy (216)
- Właściwości formularza (218)
- Identyfikatory formularzy (218)
- Zbiory pól (219)
- Stosowanie skórek do formularzy (221)
- Wybór funkcji walidacji i przetwarzania za pomocą haka hook_forms() (224)
- Porządek wywołań funkcji skórek, walidacji i przetwarzania (225)
- Tworzenie funkcji walidacji (225)
- Wykorzystywanie zmiennej $form_state do przekazywania danych (227)
- Proces odbudowania formularza (228)
- Tworzenie funkcji przetwarzania (229)
- Modyfikowanie formularzy za pomocą haka hook_form_alter() (229)
- Przetwarzanie formularzy z poziomu kodu za pomocą funkcji drupal_form_submit() (230)
- Formularze dynamiczne (231)
- Właściwości API formularzy (237)
- Właściwości formularza (237)
- Właściwości dodawane do wszystkich elementów (237)
- Właściwości dostępne we wszystkich elementach (238)
- Elementy formularza (240)
- Podsumowanie (252)
- Filtry (255)
- Filtry i formaty tekstu (256)
- Instalacja filtru (258)
- Zastosowania filtrów (259)
- Tworzenie własnego filtru (259)
- Implementacja haka hook_filter_info() (260)
- Funkcja przetwarzania (260)
- Funkcja pomocnicza (261)
- Podsumowanie (263)
- Tworzenie własnej strony wyszukiwarki (265)
- Domyślny formularz wyszukiwarki (266)
- Formularz wyszukiwania zaawansowanego (266)
- Dodawanie formularza wyszukiwania (267)
- Wykorzystywanie indeksera HTML (269)
- Zastosowania indeksera (270)
- Jak działa indekser? (270)
- Podsumowanie (277)
- Metody udostępniania plików przez Drupal (279)
- Zarządzane i niezarządzane API Drupala (279)
- Pliki publiczne (280)
- Pliki prywatne (281)
- Ustawienia PHP (281)
- Obsługa wysyłanych plików (282)
- Pole wysyłania pliku (282)
- Wideo i audio (283)
- API plików (283)
- Schemat bazy danych (283)
- Typowe zadania i funkcje (284)
- Haki uwierzytelniania do pobierania (292)
- Podsumowanie (293)
- Struktura kategorii (295)
- Tworzenie słownika (295)
- Tworzenie terminów (296)
- Powiązanie słownika z rodzajem zawartości (296)
- Rodzaje kategorii (296)
- Płaska (296)
- Hierarchiczna (297)
- Wielohierarchiczna (298)
- Przeglądanie treści przy użyciu terminów (299)
- Wykorzystywanie operatorów AND i OR w adresach URL (299)
- Automatyczne kanały RSS (300)
- Przechowywanie kategorii (301)
- Słowniki budowane w modułach (302)
- Tworzenie słownika w obrębie modułu (302)
- Informowanie o zmianach w słowniku - haki kategorii (302)
- Typowe zadania (304)
- Wyświetlanie terminów taksonomii związanych z segmentem (304)
- Tworzenie własnych zapytań kategorii (304)
- Funkcja taxonomy_select_nodes() (304)
- Funkcje taksonomii (305)
- Pozyskiwanie informacji o słownikach (305)
- Dodawanie, modyfikacja i usuwanie słowników (305)
- Pobieranie informacji o terminach (306)
- Dodawanie, modyfikacja i usuwanie terminów (307)
- Pobieranie informacji o hierarchii terminów (307)
- Wyszukiwanie segmentów oznaczonych wybranymi terminami (309)
- Dodatkowe informacje (309)
- Podsumowanie (310)
- Zastosowania pamięci podręcznej (311)
- Sposób działania pamięci podręcznej (312)
- Wykorzystywanie pamięci podręcznej w obrębie rdzenia (313)
- System menu (313)
- Pamięć podręczna a przefiltrowany tekst (314)
- Zmienne administracyjne i ustawienia modułów (314)
- Bloki (317)
- API pamięci podręcznej w praktyce (318)
- Podsumowanie (321)
- Czym są sesje? (323)
- Sposób użycia sesji (323)
- Ustawienia związane z sesją (325)
- Plik .htaccess (325)
- Plik settings.php (325)
- Plik bootstrap.inc (325)
- Wymaganie cookies (326)
- Sposób przechowywania danych w sesji (326)
- Cykl życia sesji (327)
- Konwersacje w trakcie sesji (328)
- Pierwsza wizyta (328)
- Druga wizyta (328)
- Użytkownik zarejestrowany (328)
- Typowe zadania (329)
- Zmiana terminu ważności cookie (329)
- Zmiana nazwy sesji (329)
- Przechowywanie danych w sesji (329)
- Podsumowanie (330)
- Czym jest jQuery? (331)
- JavaScript po staremu (332)
- Jak działa jQuery? (333)
- Wykorzystywanie identyfikatorów CSS (333)
- Wykorzystywanie selektora klasy CSS (333)
- jQuery + Drupal = ? (334)
- Twój pierwszy kod jQuery (334)
- Określanie elementu za pomocą ID (336)
- Łańcuchy wywołań (337)
- Dodawanie i usuwanie klas (337)
- Opakowywanie istniejących elementów (337)
- Zmiana wartości elementów CSS (338)
- Umieszczanie kodu JavaScript (338)
- Przesłanialny kod JavaScript (341)
- Tworzymy kontrolkę do głosowania w jQuery (343)
- Tworzenie modułu (345)
- Wykorzystywanie zachowań Drupala (351)
- Możliwości rozszerzenia modułu (351)
- Zgodność (352)
- Co dalej? (352)
- Podsumowanie (352)
- Włączanie modułu locale (353)
- Tłumaczenie interfejsu użytkownika (353)
- Łańcuchy znaków (353)
- Tłumaczenie łańcuchów znaków za pomocą funkcji t() (354)
- Zamiana wbudowanych łańcuchów znaków na własne (354)
- Tworzenie nowego tłumaczenia (362)
- Generowanie plików .pot za pomocą modułu translation template extractor (362)
- Tworzenie pliku .pot dla Twojego modułu (362)
- Tworzenie plików .pot dla całej witryny (364)
- Instalacja pełnego tłumaczenia dla języka (364)
- Ustawianie tłumaczenia w trakcie instalacji (364)
- Instalacja tłumaczenia w istniejącej witrynie (365)
- Obsługa języków z pisownią od prawej do lewej (366)
- Wybór języka (367)
- Domyślny (368)
- URL (369)
- Przeglądarka (370)
- Tylko URL (370)
- Tłumaczenie treści (370)
- Wprowadzenie do modułu tłumaczenia treści (371)
- Obsługa wersji językowych (371)
- Obsługa wersji językowych dla tłumaczenia (371)
- Pliki związane z lokalizacją i tłumaczeniem (375)
- Dodatkowe informacje (375)
- Podsumowanie (375)
- XML-RPC - co i jak? (377)
- Wymagania wstępne dla XML-RPC (377)
- Klienci XML-RPC (378)
- Przykład klienta XML-RPC - pobieramy czas (378)
- Przykład klienta XML-RPC - pobieramy nazwę stanu (379)
- Obsługa błędów u klienta XML-RPC (380)
- Prosty serwer XML-RPC (382)
- Przypisywanie nazw metod za pomocą haka hook_xmlrpc() (383)
- Automatyczna walidacja typów parametrów za pomocą haka hook_xmlrpc() (383)
- Wbudowane metody XML-RPC (384)
- system.listMethods (384)
- system.methodSignature (386)
- system.methodHelp (386)
- system.getCapabilities (386)
- system.multiCall (387)
- Podsumowanie (387)
- Obsługa danych przesyłanych przez użytkownika (389)
- Typy danych (390)
- check_plain() i t() - metody na oczyszczenie danych (391)
- Wykorzystywanie funkcji filter_xss() do zapobiegania atakom typu cross-site scripting (393)
- Wykorzystywanie haka filter_xss_admin() (395)
- Bezpieczna obsługa adresów URL (395)
- Tworzenie bezpiecznych zapytań za pomocą funkcji db_query() (396)
- Kontrola dostępu do danych prywatnych - hak hook_query_alter() (398)
- Zapytania dynamiczne (399)
- Uprawnienia i wywołania zwrotne strony (399)
- Ataki typu CSRF (Cross-Site Request Forgery) (400)
- Bezpieczeństwo plików (400)
- Uprawnienia do plików (400)
- Pliki chronione (401)
- Wysyłanie plików (401)
- Nazwy plików i ścieżki (402)
- Kodowanie nagłówków poczty elektronicznej (402)
- Pliki w środowisku produkcyjnym (403)
- Obsługa SSL (403)
- Samodzielne pliki PHP (403)
- Bezpieczeństwo i AJAX, czyli atak przez powtórzenie żądania (405)
- Bezpieczeństwo formularzy API (405)
- Ochrona konta superużytkownika (406)
- Podsumowanie (406)
- Standardy kodowania (407)
- Wcięcia i białe znaki (407)
- Operatory (407)
- Rzutowanie (408)
- Instrukcje kontroli przepływu (408)
- Wywołania funkcji (408)
- Deklaracje funkcji (409)
- Nazwy funkcji (409)
- Wywołania konstruktorów (410)
- Tablice (410)
- Cudzysłowy (411)
- Złączanie łańcuchów znaków (411)
- Komentarze (411)
- Przykłady dokumentacji (412)
- Dokumentowanie stałych (412)
- Dokumentowanie funkcji (412)
- Dokumentowanie implementacji haków (414)
- Dołączanie kodu (414)
- Znaczniki kodu PHP (414)
- Średniki (415)
- Przykładowe adresy URL (415)
- Konwencje nazewnicze (415)
- Sprawdzanie stylu kodowania za pomocą modułu coder (415)
- Szybka nawigacja w kodzie Drupala za pomocą narzędzia grep (416)
- Podsumowanie (417)
- Pamięć podręczna - klucz do wydajności Drupala (419)
- Optymalizacja PHP (421)
- Przekierowanie pliku pamięci podręcznej kodu operacyjnego PHP na /dev/zero (422)
- Ustawienia puli procesów PHP (422)
- Dostosowywanie serwera Apache (423)
- mod_expires (423)
- Przenoszenie dyrektyw z pliku .htaccess do pliku httpd.conf (423)
- Preforkowanie MPM vs. Apache MPM Worker (424)
- Dopasowywanie rozmiaru puli Apache (424)
- Zmniejszanie czasu oczekiwania Apache (425)
- Wyłączenie nieużywanych modułów Apache (425)
- Nginx zamiast Apache - zmiana serwera WWW (425)
- Pressflow (425)
- Varnish (425)
- Normalizacja żądań przychodzących w celu zwiększenia wydajności Varnisha (426)
- Varnish: znajdywanie dodatkowych cookies (427)
- Boost (427)
- Boost a Varnish (428)
- Konfiguracja systemu Linux w serwerach o wysokim natężeniu (428)
- Używanie szybkich systemów plików (429)
- Serwery dedykowane a serwery wirtualne (430)
- Unikanie wywoływania zewnętrznych usług sieciowych (430)
- Obniżanie czasu oczekiwania serwera (430)
- Optymalizacja bazy danych (431)
- Włączenie pamięci podręcznej zapytań MySQL (431)
- Wydajność silnika MySQL InnoDB w systemie Windows (431)
- Wydajność Drupala (432)
- Pozbycie się błędów 404 (432)
- Wyłączenie niewykorzystywanych modułów (432)
- Optymalizacje Drupala (432)
- Pamięć podręczna dla stron (432)
- Optymalizacja pasma (432)
- Czyszczenie tabeli sesji (433)
- Zarządzanie ruchem użytkowników zalogowanych (433)
- Wywoływanie programu cron (434)
- Architektury (434)
- Pojedynczy serwer (434)
- Odrębny serwer bazodanowy (434)
- Odrębny serwer bazodanowy i klaster serwerów WWW (434)
- Wiele serwerów baz danych (436)
- Znajdowanie wąskich gardeł (436)
- Serwer WWW z obciążonym procesorem (437)
- Serwer WWW nie dysponuje wystarczającą ilością pamięci RAM (437)
- Podsumowanie (440)
- Tworzenie nowego profilu instalacji (441)
- Plik enhanced.info (441)
- Plik enhanced.profile (442)
- Plik enhanced.install (443)
- Haki hook_install_tasks i hook_install_tasks_alter (455)
- Podsumowanie (456)
- Konfiguracja środowiska testowego (457)
- Tworzenie testów (459)
- Funkcje testowe (464)
- Asercje testowe (467)
- Podsumowanie (470)
- Programowanie (511)
- Repozytorium kodu Drupala (GIT) (511)
- Przykłady (511)
- Dokumentacja API Drupala (512)
- Porady dotyczące bezpieczeństwa (512)
- Aktualizacja modułów (512)
- Aktualizacja skórek (512)
- Podręczniki (512)
- Forum (512)
- Listy dyskusyjne (513)
- Development (513)
- Themes (513)
- Translations (513)
- Grupy użytkowników (513)
- Internet Relay Chat (513)
- Ameryka Północna (514)
- Europa (515)
- Azja (516)
- Ameryka Łacińska/Karaiby (516)
- Oceania (516)
- Afryka (516)
- Nagrania wideo (517)
- Dzienniki sieciowe (517)
- Konferencje (517)
- Obsługa Drupala (517)
Przedmowa (15)
O autorach (17)
O korektorach merytorycznych (19)
Podziękowania (21)
Wstęp (23)
Rozdział 1. Jak działa Drupal? (25)
Rozdział 2. Tworzenie modułów (33)
Rozdział 3. Haki, działania i wyzwalacze (49)
Rozdział 4. System menu (69)
Rozdział 5. Praca z bazą danych (93)
Rozdział 6. Obsługa użytkowników (115)
Rozdział 7. Obsługa segmentów (131)
Rozdział 8. Obsługa pól (151)
Rozdział 9. System skórek (169)
Rozdział 10. Bloki (197)
Rozdział 11. API formularzy (209)
Rozdział 12. System filtrów (255)
Rozdział 13. Wyszukiwanie i indeksowanie informacji (265)
Rozdział 14. Obsługa plików (279)
Rozdział 15. Obsługa kategorii (295)
Rozdział 16. Obsługa pamięci podręcznej (311)
Rozdział 17. Sesje (323)
Rozdział 18. jQuery w Drupalu (331)
Rozdział 19. Lokalizacja i tłumaczenie (353)
Rozdział 20. XML-RPC (377)
Rozdział 21. Tworzenie bezpiecznego kodu (389)
Rozdział 22. Dobre praktyki programistyczne (407)
Rozdział 23. Optymalizacja Drupala (419)
Rozdział 24. Profile instalacji (441)
Rozdział 25. Testowanie (457)
Dodatek A: Spis tabel bazy danych Drupala (471)
Dodatek B: Zasoby (511)
Skorowidz (519)
Oceny i opinie klientów: Drupal 7. Zaawansowane programowanie Todd Tomlinson, John K. VanDyk (13)
Weryfikacja opinii następuję na podstawie historii zamówień na koncie Użytkownika umieszczającego opinię. Użytkownik mógł otrzymać punkty za opublikowanie opinii uprawniające do uzyskania rabatu w ramach Programu Punktowego.
(2)
(4)
(2)
(4)
(1)
(0)
Data dodania: 2012-05-14 Ocena: 6 Opinia potwierdzona zakupem
Karol Bryksa, Web Developer
Data dodania: 2011-11-21 Ocena: 6 Opinia potwierdzona zakupem
MK, programista
Data dodania: 2014-08-08 Ocena: 5 Opinia potwierdzona zakupem
Marcin,
Data dodania: 2013-04-19 Ocena: 5 Opinia potwierdzona zakupem
Stanisław Eysmont, Project Manager, programista, designer
Data dodania: 2012-04-12 Ocena: 5 Opinia potwierdzona zakupem
Adam Dziendziel,
Data dodania: 2011-11-18 Ocena: 5 Opinia niepotwierdzona zakupem
Bartek, font-end developer
Data dodania: 2015-01-09 Ocena: 4 Opinia potwierdzona zakupem
Stanisław Eysmont,
Data dodania: 2011-12-19 Ocena: 4 Opinia potwierdzona zakupem
programista
Data dodania: 2013-03-15 Ocena: 3 Opinia potwierdzona zakupem
Programista Drupal
Data dodania: 2013-01-30 Ocena: 3 Opinia niepotwierdzona zakupem
Data dodania: 2012-10-18 Ocena: 3 Opinia niepotwierdzona zakupem
Data dodania: 2012-01-25 Ocena: 3 Opinia niepotwierdzona zakupem
Łukasz Martyn,
Data dodania: 2013-01-09 Ocena: 2 Opinia niepotwierdzona zakupem
więcej opinii