[PL] DSP 2017 – Instalacja i konfiguracja Umbraco

Zanim przejdziemy do konkretów na początek jeszcze kilka informacji o samym Umbraco.

Cały system składa się z dwóch części:

  • backendu, czyli główego silnika napędowego, stworzonego w ASP.NET (na chwilę obecną ASP.NET MVC 5),
  • panelu administracyjnego, nazywanego również Backoffice, aplikacji frontendowej stworzonej w AngularJS (na chwilę obecną wersja 1.1.5)

Za część trzecią, czyli front aplikacji, odpowiedzialni jesteśmy My. Można posłużyć się tu gotowymi szablonami (np. uSkinned), niestety nie jest ich tak dużo jak np. w WordPressie i ciężko znaleźć darmowe. Bardzo łatwo jednak przerobić dowolny szablon HTML, których w Internecie znaleźć można mnóstwo, na widoki Umbraco. Widoki te korzystają ze składni Razor, a zatem osoby mające jakiekolwiek doświadczenie w ASP.NET MVC powinny poradzić sobie z tym bez problemu.

Struktura projektu

Zacznijmy od struktury folderów w projekcie. Jest to sposób tworzenia aplikacji zaczerpnięty do Maćka Aniserowicza. Zakłada on utworzenie odrębnego folderu na część aplikacyjną i oddzielnego testy. W tym przypadku część aplikacyjną podzieliłem na “Web”, czyli folder zawierający Umbraco, oraz “Logic”, czyli folder zawierający moją logikę, która jest specyficzna dla tego projektu.

W Visual Studio wygląda to natomiast w ten sposób:

, gdzie:

  • Aggregator.Logic – projekt typy Class Library
  • Aggregator.Tests – projekt typu Class Library
  • Aggregator.Web – projekty typu Web Application (Empty)

Instalacja Umbraco

Najprostszym sposobem zainstalowania Umbraco jest wykorzysanie managera pakietów NuGet.

W tym celu należy otworzyć Package Manager Console (jeżeli nie jest widoczna to można znaleźć ją w menu View -> Other Windows -> Package Manager Console), następnie wybrać projekt, w którym ma zostać zainstlaowane Umbraco (w tym przypadku Aggragator.Web) i wpisać komendę “Install-Package UmbracoCms”.

Po chwili ujrzymy następujący ekran:

Na potrzeby tego projektu, całą logikę aplikacji umieszczę w osobnej bibliotece (wspomniana wcześniej Class Library Aggragator.Logic). Aby móc korzystać w niej z dobrodziejstw Umbraco będę potrzebował zainstalować trzon systemu, który da mi dostęp do wszystkich podstawowych funkcji ale bez interfejsu webowego. W tym celu przełączam się w Package Manager Console na projekt Aggregator.Logic i wywołuję komendę “Install-Package UmbracoCms.Core”:

To już prawie wszystko. Poniżej znajdziesz jeszcze listę dodatkowych pakietów, z których będę korzystał, wraz z krótkim opisem.

Aggregator.Web

  • uSync – rozszerzenie pozwalające na synchronizację danych między instancjami Umbraco, np. kiedy przerzucamy projekt na inny serwer lub inne środowisko
  • CoreValueConverters – rozszerzenie pozwalające na automatyczną konwersję popularnych Data Types na obiekty C#
  • NestedContent – rozszerzenie pozwalajace na umieszczanie zagnieżdżonych węzłów z treścią (więcej o tym rozszerzeniu w kolejnych wpisach)

Aggregator.Logic

  • Autofac – kontener IoC, nie jest to element niezbędny do uruchomienia Umbraco, jenak będzie przydatny w późniejszej części projektu

Aggregator.Tests

Referencje projektów

  • W Aggregator.Web jako referencję należy dodać Aggregator.Logic
  • W Aggregator.Tests jako referencję również należy dodać Aggregator.Logic

Pierwsze uruchomienie

Przy pierwszym uruchomieniu (CTRL + F5, należy pamiętać, żeby projekt Web ustawić jako projekt startowy) ukaże nam się ekran konfiguracyjny Umbraco:

Po wybraniu opcji “Customize” otrzymamy możliwość wskazania bazy danych, którą będzie wykorzystywał nasz projekt. Domyślnie wykorzystywana jest baza SQL CE, która zostaje zapisana w katalogu App_Data. Jest ona dobra to małych, eksperymentalnych projektów lub stron “statycznych”, na których treść zmieniana jest bardzo rzadko. Poza SQL CE do wybory jest jeszcze:

  • Microsoft SQL Server
  • MySQL
  • Azure SQL Database
  • ręczne wprowadzenie wartości ConnectionString

Osobiście preferuję opcję Microsoft SQL Server, do której w zupełności wystarcza SQL Server w wersji Express, należy pamiętać jedynie o wcześniejszym utworzeniu bazy danych, np. przy pomocy SQL Management Studio.

Na koniec instalator Umbraco zapyta jeszcze czy zainstalować, któryś z domyślnych szablonów czy wolelibyśmy zacząć od zera. My oczywiście zaczynamy od zera 🙂

Od tej chwili mamy w pełni funkcjonalne, gotowe do pracy Umbraco.

Zdjęcie w nagłówku pochodzi z pexels.com