Спрашивали - отвечаем: о переделке шаблонов Wordpress и WooCommerce
Ответ на вопрос о сложности переноса шаблона сайта с Wordpress на Impera CMS.
Gamitoy спрашивал Понравилась Ваша система, хотели бы перейти на неё с Wordpress. Вопрос теперь в переносе шаблона. Наш девелопер может сделать сам и насколько это сложно?
Всё зависит от того, какой шаблон использован на вашем сайте и есть ли в нём нестандартные доработки. Во множестве случаев покупные темы как Wordpress, так и WooCommerce представляют собой слегка изменённые клоны дефолтного шаблона, так что миграция темы из системы в систему происходит достаточно легко. Нужно лишь знать особенности той и другой систем, в основном в части устройства шаблонов.
Поскольку базовые принципы строения шаблонов примерно одинаковые во всех движках и отличаются лишь способами записи кода, именами функций, переменных, их структурой, то обычно перенос шаблона выполняется переписыванием его файлов в той нотации, что присуща конечной системе.
Скажу прямо, если ваш девелопер хорошо разбирается в устройстве шаблонов WordPress / WooCommerce, ему будет легко портировать вашу тему в шаблон Impera CMS, отличающийся простыми схемами записи кода.
Пример кода из шаблона для WooCommerce
«?php get_header(); ?» «div class="page-title"» «div class="container"» «h1»«?php echo get_the_title(); ?»«/h1» «/div» «/div» «section class="container"» «main id="main" class="site-main"» «?php while ( have_posts() ) : the_post(); get_template_part( 'content', 'page' ); if ( my_theme_option( 'my_page_comments' ) ) { if ( comments_open() || '0' != get_comments_number() ) : comments_template(); endif; } endwhile; ?» «/main» «?php get_sidebar(); ?» «/section» «?php get_footer(); ?»
Тот же код в шаблоне Impera CMS
«div class="page-title"» «div class="container"» «h1»{title}«/h1» «/div» «/div» «section class="container"» «main id="main" class="site-main"» {foreach $products as $item} {include 'content-page.htm'} {if !empty($item-»commented)} {include 'comments.htm'} {/if} {/foreach} «/main» {include 'sidebar.htm'} «/section»