Екскурс в історію

Логотип Wolf CMS

Спочатку Wolf CMS називалась Frog CMS і була створена Philippe Archambault. Перша публічна версія датована 5 січня 2007 року. Причому вона була, по суті, копією іншої CMS (Radiant CMS), переписаної з Ruby on Rails на PHP. Вже після версії 0.9.4 Philippe Archambault майже повністю відійшов від розробки Frog CMS. Найсвіжіша версія Frog CMS — 0.9.5 випускалася вже без його участі. Основним лідером розробки версії 0.9.5 був Martijn, який згодом створив форк* під назвою Wolf CMS через розбіжності з Philippe.

* Форк (англ. fork — вилка) — процес розділення програмного продукту на декілька окремих проекти (гілки).

Характерні особливості

  • Wolf CMS не вимоглива до ресурсів.
  • Працює як з SQLite, так і з MySQL.
  • В ній є розумний компроміс між гострим бажанням будь-якого гіка написати все самому і бажанням будь-якої нормальної людини полегшити собі життя.
  • В Wolf CMS реалізована підтримка реєстрації та розподілу прав користувачів
  • Весь основний код сайту видно прямо в адмінці.
  • У разі необхідності можна давати доступ недосвідченим користувачам. В такому разі код від них буде приховано, а інтерфейс для написання контенту — цілком зрозумілим і пристойно виглядатиме.

Адмін. частина Wolf CMS

Ядро даної CMS мінімалістичне. Воно написано таким чином, що дозволяє лише зібрати в єдине ціле частини PHP і HTML коду, що зберігається в базі. При цьому сам код доступний адміністратору сайту для прямого редагування. Виглядає це приблизно так: беремо шаблон всієї сторінки, підставляємо в нього окремі модулі типу header і footer, в потрібні місця вставляємо контент і допоміжний (sidebar). Тоді як класичні CMS намагаються заховати від користувача чистий PHP і HTML код. У Вольф CMS адміністратор бачить практично весь код в чистому вигляді, тільки акуратно розкладений по поличках.

В адміністративному інтерфейсі розрізняються такі поняття, як «Шаблони», «Фрагменти» та «Сторінки».

Шаблон (Layout) — це основа сайту. У ньому прописується весь код, підключаються CSS файли, метатеґи, блоки і т.п. Але, природно, що в потрібних місцях, замість реального контенту вставляються певні функції Wolf CMS. Таким чином, шаблон виглядає як HTML код стандартного сайту, але при цьому він короткий і легко читаємо за рахунок заміни основних блоків на PHP-функції з зрозумілими іменами. Звісно ж можна створювати нові шаблони та застосовувати їх до різних розділів сайту і навіть різних сторінок.

Фрагмент (Snippet) — невеликий шматок HTML і PHP коду, який дозволяє виділити якийсь блок інформації в окрему сутність. За замовчуванням, у вигляді окремих фрагментів виділені header і footer. Надалі як фрагменти можна оформляти невеликі блоки інформації. Окремими фрагментами, при бажанні, можна зробити список посилань, список 3-х останніх статей в блозі, рекламний блок і т.п.

Сторінка (Page) — це конкретна стаття, замітка, новина і т.п. Усі сторінки організовані у вигляді ієрархічної структури. Причому текст статті може бути просто набором слів, а може бути і PHP або HTML кодом. При цьому, на відміну від фрагмента, у сторінок є ще додаткові поля метаданих, такі як keywords і description (тобто SEO оптимізація), а також додаткові опції, за допомогою яких можна впливати на їх зовнішній вигляд, права доступу, дата публікації і т.п. Цікаво, що у вигляді окремих сторінок в Wolf CMS оформлені, вельми специфічні речі, такі як RSS-стрічка та архів статей. Особливо варто відзначити гарне опрацювання ієрархічної структури. Наприклад, всі статті блоґу є нащадками сторінки «Articles», яка в свою чергу є нащадком сторінки «Home Page». Згодом цю ієрархію легко можна трансформувати в меню, в тому числі і багаторівневе.

Джерела: