Skocz do zawartości
  • Zarejestruj się

Centrum IP.Board

Zaloguj się, aby obserwować  
  • wpisy
    44
  • komentarzy
    0
  • wyświetleń
    57875

IP.Board 4 - Pluginy

Spanner

1918 wyświetleń

Wprowadzenie

Modyfikacje, dodatki, pluginy, hooki - bez względu na to jakiej nazwy użyjemy, są to dodatki modyfikujące kod. Dodatki te są bardzo ważną częścią każdego forum. Jeszcze nie tak dawno trzeba było otwierać pliki i wklejać w odpowiednim miejscu fragmenty kodu. W rzeczywistości IP.Board był jedną z pierwszych aplikacji napisanych w OOP i wspierającą modyfikacje w bardziej uporządkowany sposób.

Obecnie w dużej mierze IP.Board posiada dwa rodzaje modyfikacji: aplikacje, które dodają zupełnie nowe obszary na stronie oraz funkcje (przykładem takiej aplikacji może być IP.Blog, IP.Nexus, (SD) Sales Portal Pro) i hooki, które zmieniają lub rozszerzają aktualne funkcjonalności forum lub aplikacji.

Same aplikacje są swego rodzaju rodzaju samorządne, więc nie ma tu zbyt wiele do powiedzenia o nich, z jednym wyjątkiem: w IP.Board 4 aplikacje będzie można pobrać, a następnie zainstalować w swoim Admin CP - jako jeden pliku. Nie będzie trzeba nic wgrywać na FTP. Będzie to zwykły plik .tar. Oczywiście jeśli będziesz chciał, można go będzie otworzyć i przejść starą ścieżkę.

Terminologia

Termin "hook" w IP.Board 3.x jest dwuznaczny. Czasami odnosi się do całej sprawy (np. instalacja hooka), a czasami odnosi się do konkretnej części technicznej (np. hook skina).

W IP.Board 4 nazwa hook została zastąpiona nazwą plugin. Elementy techniczne, które składają się na plugin, nadal będą nazywane hookami.

Piaskownica

Do tej pory jeśli rozszerzana była jakaś funkcjonalność i wgraliśmy nową wersję, która nie obsługiwała poprawnie tej funkcjonalności, pojawiał się błąd lub biała strona.

IP.Board 4 będzie posiadał tryb piaskownicy. Oznacza to, że jeżeli plugin spowoduje nieoczekiwany błąd (np. błąd bazy danych), to strona przywróci działanie domyślne, a użytkownicy nigdy nie będą wiedzieć co poszło nie tak.

Proste (ale zaawansowane) ustawienia

W IP.Board 3.x dostępny był obszar, w którym można było zarządzać ustawieniami. Hooki mogły dodawać w tym obszarze swoje ustawienia, co było czasem mylące, ponieważ użytkownicy nie wiedzieli gdzie skonfigurować hook po zainstalowaniu.

W IP.Board 4 każdemu pluginowi przydzielana jest strona z ustawieniami, która jest dostępna poprzez kliknięcie przycisku "Edytuj" na liście wtyczek. Strona ustawień może być zarządzana przez twórców dodatków w dowolny sposób, dzięki czemu nie będzie już ograniczany widokiem tabelarycznym jak było w wersji 3.x.

Wersjonowanie

Od wersji 4 IP.Board będzie obsługiwał pełne wersjonowanie wtyczek, dzięki czemu wystarczy wgrać nową wersję, a upgrader zajmie się resztą za nas.

Typy hooków

W IP.Board 3.x było kilka rodzajów hooków:

  • Przeładowania akcji
  • Hooki bibliotek
  • Hooki danych
  • Przeładowania skinów
  • Hooki szablonów

W IP.Board 4 zostały poczynione kilka radykalnych zmian:

Hook kodu

Pierwsze trzy rodzaje zostały połączone w jeden, nazwany "hook kodu". Będą one mogły przeciążać każdą klasę, nawet taką, której obecnie nie można było rozszerzyć.

Hooki szablonu

Ostatnie dwa zostały połączone w jeden, nazwany "hook szablonu". Hooki te będą wstrzykiwane podczas kompilowania szablonów. Oznacza to, że będą działać równie dobrze w panelu administratora, jak i od strony front-end'u

 



0 komentarzy


Rekomendowane komentarze

Brak komentarzy do wyświetlenia.

Bądź aktywny! Zaloguj się lub utwórz konto

Tylko zarejestrowani użytkownicy mogą komentować zawartość tej strony

Utwórz konto

Zarejestruj nowe konto, to proste!

Zarejestruj nowe konto

Zaloguj się

Posiadasz własne konto? Użyj go!

Zaloguj się
×

Ważne informacje

W celu świadczenie usług przez nasz Serwis na najwyższym poziomie, w ramach Serwisu wykorzystujemy pliki Cookies (tzw. ciasteczka). Korzystając ze stron Serwisu IPSBEYOND.PL bez zmiany ustawień przeglądarki będą one zapisane w pamięci urządzenia. Jeżeli nie dokonacie Państwo zmiany ustawień przeglądarki internetowej to wyrażacie zgodę na zapisywanie plików Cookies.