Discover a theme designed for harmony — perfect for eco projects, nature blogs, and mindful living websites. Zen is more than a style — it's a way of seeing the world.
Driven by passion. Focused on quality.
We build smart web solutions for growing brands.
What I Do
Design-driven. Detail-obsessed. I turn ideas into functional, beautiful, and unforgettable digital experiences.
Logos, colors, layouts – I help brands look stunning without losing their soul.
From wireframe to wow. Interfaces that feel like second nature to your users
Concrete CMS websites that work hard behind the scenes – fast, secure, and scalable.
Photos, videos, motion – because your story deserves more than just words.
Why choose us?
Designed for developers
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ac turpis egestas maecenas pharetra convallis.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ac turpis egestas maecenas pharetra convallis.
Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ac turpis egestas maecenas pharetra convallis.
In the gentle descent of autumn leaves, we witness one of nature's most profound lessons. As trees release their foliage, they demonstrate the art of letting go – a cornerstone of Zen philosophy. This seasonal shedding is not an act of loss but of wisdom; trees understand that holding on would only create resistance against winter winds.
Water embodies Zen principles in its very nature – flowing, adapting, yielding yet persistent. In the gentle stream that carves canyons or the morning dew that quenches a flower's thirst, water demonstrates perfect mindfulness – being fully present in each moment, taking the shape of whatever contains it.
Deep in forests across our planet, trees engage in silent conversations through an intricate network of roots and fungi. This "wood wide web" allows them to share nutrients, send warning signals about threats, and support their neighbors in times of need – all without making a sound.
Mountains stand as Earth's great meditation masters – unwavering, present, and infinitely patient. Formed over millions of years through tremendous pressure and transformation, they embody the Zen principle that great strength comes not from resistance but from accepting and integrating life's forces.
In the delicate interplay between species in a healthy ecosystem, we find the perfect expression of Zen balance. Each organism, from the smallest soil bacterium to the tallest redwood, fulfills its unique role without striving to be something else. Predators keep prey populations healthy; decomposers transform death into new life; plants convert sunlight into energy that sustains all.
Bring Zen theme to life and start building — today
There are combined alignment methods – when several types of alignment together are used in one composition.
Mobile Phone: +48 785 868 901
Location: GPS 12.1 13.4
12:42
dariusz.garus@gmail.com
https://dariuszgarus.pl
Robotnicza 23/23, 42-230 Koniecpol
22 czerwiec 1974
Witaj w przewodniku, który pomoże Ci zrozumieć, jak zarządzać zasobami (CSS, JavaScript) w Concrete CMS. Nawet jeśli dopiero zaczynasz swoją przygodę z programowaniem, ten przewodnik przeprowadzi Cię krok po kroku przez najważniejsze aspekty zarządzania zasobami w tym systemie.
Zasoby to pliki CSS i JavaScript, które są kluczowe dla działania Twojej strony. Na przykład, aby Redactor (edytor tekstowy) działał poprawnie, musisz załadować odpowiednie pliki JavaScript i CSS, takie jak:
concrete/js/redactor.js
concrete/css/redactor.css
concrete/js/file-manager.js
concrete/css/file-manager.js
Wcześniej do dodawania zasobów używano metod takich jak $view->addHeaderItem()
czy $view->addFooterItem()
. Chociaż nadal są dostępne, lepszym rozwiązaniem jest używanie bardziej elastycznego systemu zarządzania zasobami.
Framework Zasobów w Concrete CMS, znajdujący się w przestrzeni nazw \Concrete\Core\Asset
, umożliwia rejestrowanie zasobów, obsługę minifikacji, wersjonowania i ścieżek do plików. Możesz także grupować zasoby, co ułatwia ich dołączanie. Na przykład, aby dodać zasoby dla Redactora, wystarczy użyć:
$this->requireAsset('redactor');
Szablony w Concrete CMS mogą zawierać własne zasoby. Przykładowo, szablon Bootstrap 3 zawiera style CSS i skrypty JavaScript związane z Bootstrapem. Aby uniknąć konfliktów i duplikacji zasobów, dodajemy następujący kod do klasy PageTheme
:
public function registerAssets()
{
$this->providesAsset('javascript', 'bootstrap/*');
$this->providesAsset('css', 'bootstrap/*');
$this->providesAsset('css', 'blocks/form');
$this->providesAsset('css', 'core/frontend/*');
$this->requireAsset('javascript', 'jquery');
}
Aby używać zasobu w Concrete CMS, musisz go zarejestrować. Oto przykład rejestrowania jQuery:
$al = \Concrete\Core\Asset\AssetList::getInstance();
$al->register('javascript', 'jquery', 'js/jquery.js');
getInstance()
: Pobiera instancję klasy AssetList.register()
: Rejestruje zasób z typem (np. 'javascript' lub 'css'), unikalnym identyfikatorem (np. 'jquery'), ścieżką do pliku oraz opcjonalnymi parametrami.Obsługiwane typy zasobów to:
Ścieżki do plików w metodzie register()
są względne i mogą odnosić się do katalogów application/
, packages/package_handle/
lub concrete/
.
application/bootstrap/app.php
, metodzie on_start()
pakietu lub bloku.on_start()
typu bloku.on_start()
.Możesz dodać dodatkowe opcje podczas rejestrowania zasobu, np. określenie pozycji (HEADER lub FOOTER), wersji, czy zasób ma być minifikowany lub łączony. Przykład:
$al->register(
'javascript', 'mediaelement', 'blocks/audio/mediaelement/mediaelement-and-player.min.js',
array('version' => '2.16.3', 'minify' => false, 'combine' => true)
);
$al->register(
'css', 'mediaelement', 'blocks/audio/mediaelement/mediaelementplayer.min.css',
array('version' => '2.16.3', 'minify' => false, 'combine' => true)
);
Możesz grupować zasoby, aby łatwiej nimi zarządzać. Przykład:
$al = \Concrete\Core\Asset\AssetList::getInstance();
$al->registerGroup('mediaelement', array(
array('css', 'mediaelement'),
array('javascript', 'jquery'),
array('javascript', 'mediaelement')
));
Aby dodać zasób lub grupę zasobów na stronie lub w bloku, użyj requireAsset()
. Przykłady:
public function view() {
$this->requireAsset('mediaelement');
}
public function add() {
$this->requireAsset('core/filemanager');
}
public function registerViewAssets($outputContent = '') {
$this->requireAsset('mediaelement');
}
Zarządzanie zasobami w Concrete CMS może wydawać się skomplikowane, ale z odpowiednim podejściem staje się proste i efektywne. Rejestracja zasobów, ich grupowanie i dodawanie do stron oraz bloków pozwala na tworzenie nowoczesnych, funkcjonalnych witryn internetowych bez zbędnych komplikacji.
Design-driven. Detail-obsessed. I turn ideas into functional, beautiful, and unforgettable digital experiences.
Logos, colors, layouts – I help brands look stunning without losing their soul.
From wireframe to wow. Interfaces that feel like second nature to your users.
Concrete CMS websites that work hard behind the scenes – fast, secure, and scalable.
Photos, videos, motion – because your story deserves more than just words.