Около 70% от проблемите при CMS миграции идват от несъвместими шаблони и inline код. Maksoft CMS решава това чрез Maksoft Template Language (MTL), който запазва PHP и добавя структуриран контрол върху JavaScript, CSS и ресурси.
MTL запазва PHP като основа. MTL добавя декларативни директиви. MTL осигурява преносимост между теми. Това позволява съществуващи файлове като edit.php, PageURL и phpCode да продължат да работят, без да се пренаписват.
Maksoft Template Language е съвместим слой върху стандартните PHP шаблони. Той не заменя PHP, а позволява шаблоните да декларират JavaScript, CSS и други блокове по начин, който CMS engine може да обработи централизирано.
Темите не трябва да парсват или интерпретират MTL. Темите само извикват стандартни точки за визуализация като render_assets(), hook('css') и hook('js').
MTL позволява JavaScript кодът да бъде деклариран в PHP шаблон, без да се нарушава legacy изпълнението.
<!-- @push('js') -->
<script type="text/javascript">
$j(document).ready(function(){
// Legacy JavaScript code
});
</script>
<!-- @endpush -->
hook('js').CSS блоковете се декларират по същия начин. Това позволява стиловете да бъдат преместени към правилната зона в страницата, без промени в стария PHP код.
<!-- @push('css') -->
<style>
.edit-page-form {
margin-top: 10px;
}
</style>
<!-- @endpush -->
MTL engine регистрира този блок към hook('css'). Така CSS кодът може да бъде изведен в <head>, а основното съдържание остава чисто.
MTL управлява JavaScript и CSS зависимости чрез asset декларации. Разработчикът посочва нужните ресурси, а CMS engine ги регистрира централизирано.
<!-- @asset('jquery') -->
<!-- @asset('jquery-alias-j') -->
<!-- @asset('fancybox') -->
$o_page->add_asset('jquery');
$o_page->add_asset('jquery-alias-j');
$o_page->add_asset('fancybox');
CMS engine регистрира ресурсите. Темата извежда ресурсите. Разработчикът избягва ръчно дублиране на зависимости.
main_content
→ include(edit.php)
→ HTML + PHP + CSS + JS render inline
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 добавя отворен механизъм за бъдещи разширения.
Грешният избор на 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