Maksoft.net

Около 70% от проблемите при CMS миграции идват от несъвместими шаблони и inline код. Maksoft CMS решава това чрез Maksoft Template Language (MTL), който запазва PHP и добавя структуриран контрол върху JavaScript, CSS и ресурси.

MTL запазва PHP като основа. MTL добавя декларативни директиви. MTL осигурява преносимост между теми. Това позволява съществуващи файлове като edit.php, PageURL и phpCode да продължат да работят, без да се пренаписват.

Какво представлява Maksoft Template Language

Maksoft Template Language е съвместим слой върху стандартните PHP шаблони. Той не заменя PHP, а позволява шаблоните да декларират JavaScript, CSS и други блокове по начин, който CMS engine може да обработи централизирано.

  • Templates декларират съдържанието.
  • Engine интерпретира MTL директивите.
  • Themes визуализират крайния резултат.

Темите не трябва да парсват или интерпретират MTL. Темите само извикват стандартни точки за визуализация като render_assets(), hook('css') и hook('js').

JavaScript пример с @push('js')

MTL позволява JavaScript кодът да бъде деклариран в PHP шаблон, без да се нарушава legacy изпълнението.

<!-- @push('js') -->
<script type="text/javascript">
$j(document).ready(function(){
    // Legacy JavaScript code
});
</script>
<!-- @endpush -->

Очаквано поведение

  • Legacy CMS рендерира JavaScript блока inline.
  • MTL-aware engine извлича блока и го премества към hook('js').
  • Темата визуализира JavaScript чрез стандартен hook.

CSS пример с @push('css')

CSS блоковете се декларират по същия начин. Това позволява стиловете да бъдат преместени към правилната зона в страницата, без промени в стария PHP код.

<!-- @push('css') -->
<style>
.edit-page-form {
    margin-top: 10px;
}
</style>
<!-- @endpush -->

MTL engine регистрира този блок към hook('css'). Така CSS кодът може да бъде изведен в <head>, а основното съдържание остава чисто.

Деклариране на ресурси с @asset

MTL управлява JavaScript и CSS зависимости чрез asset декларации. Разработчикът посочва нужните ресурси, а CMS engine ги регистрира централизирано.

<!-- @asset('jquery') -->
<!-- @asset('jquery-alias-j') -->
<!-- @asset('fancybox') -->

Поведение на engine слоя

$o_page->add_asset('jquery');
$o_page->add_asset('jquery-alias-j');
$o_page->add_asset('fancybox');

CMS engine регистрира ресурсите. Темата извежда ресурсите. Разработчикът избягва ръчно дублиране на зависимости.

Rendering flow при legacy и MTL режим

Legacy поведение

main_content
→ include(edit.php)
→ HTML + PHP + CSS + JS render inline

MTL-aware поведение

main_content
→ capture include output
→ extract @push blocks
→ render remaining HTML/PHP

head
→ hook('css')

footer
→ render_assets('js')
→ hook('js')

Maksoft CMS разделя логика, декларация и визуализация. Това подобрява преносимостта между теми и намалява риска при бъдещи обновления.

Разширяемост с други езици

MTL позволява внедряване на други езици, без да се нарушава PHP съвместимостта. Обработката остава задача на CMS engine слоя.

<!-- @lang('twig') -->
...
<!-- @endlang -->

<!-- @lang('scss') -->
...
<!-- @endlang -->

Така PHP остава базовият template език, а MTL добавя отворен механизъм за бъдещи разширения.

Ползи за разработчици и клиенти

  • Разработчиците получават предвидима структура за JS, CSS и assets.
  • Клиентите получават по-преносима CMS архитектура при смяна на тема или дизайн.
  • Legacy кодът остава валиден и не изисква пълно пренаписване.
  • Темите остават независими от вътрешната логика на MTL.

Грешният избор на CMS често води до трудна поддръжка, скъпи миграции и несъвместими теми. Maksoft CMS намалява този риск, като запазва съществуващия PHP слой и добавя ясен модел за модерна theme архитектура.

Основният принцип е прост: templates declare, engine interprets, themes render.

Проверете подходящите ключови думи за тази тема чрез seo.maksoft.net. За по-добро позициониране комбинирайте съдържанието с вътрешна SEO оптимизация и органичен линк билдинг чрез Активен сайт от Максофт: https://maksoft.net.

Ключови изрази: Maksoft CMS, Maksoft Template Language, MTL PHP шаблони, преносима CMS архитектура, управление на JS и CSS в CMS


Начало /  /  / Документация /  / Maksoft Template Language (MTL)
Maksoft.Bg Maksoft.Net BrandIT