• Всем привет, столкнулся с проблемой отображения верстки шаблона на хостинге beget.
    Тему делал самостоятельно. Под каждую страницу с услугами (автошкола, удостоверение тракториста машиниста и тп) делал свой шаблон, тк в шаблоне есть условие по выбору категории услуг. Все старые шаблоны работают так как надо, но при добавление в тему нового шаблона (тупо копипаст и смена условия отбора) верстка на даном хостинге слетает и решить эту проблему они не смогли, на локальном сервере (OpenServer) все работает так как надо. Думал может это проблема хостингов, но нет, зарегистрировался в timeweb и настроил свою тему там, и при добавление новой категории услуг все выводит и не ломает.
    Вот какие шаги я делаю для добавление новой страницы:
    1) Копирую файл archive-vy.php и переименовываю в archive-welder.php
    2) Внутри файла меняю с Template Name: Шаблон для Автошколы на Template Name: Шаблон для сварки
    3) Внутри файла меняю условие выбора услуг по ярлыку с if($service->slug==’04vy’): на if($service->slug==’05’):
    4) сохраняю файл
    5) Создаю страницу для отображения шаблона сварка и привязываю Шаблон страницы Сварка
    6) Создаю группу Сварка с ярлыком ’05’ для вывода прикрепленных записей к группе (в админ панели Услуги-Все группы)
    7) Создаю тестовую услугу и указываю галочкой что данная услуга принадлежит группе Сварка (в админ панели Услуги — Новая услуга)
    Как видно из шагов верстку не трогаю, почему WP выкидывает блок div с классом services__item за пределы main не понимаю, хотя все остальные «такие же» шаблоны работают как положено (можно посмотреть на сайте в меню услуги). Думал мб где кэш есть в самом WP, но такой папки не нашел как пишут на разных сайтах (wp-content/cache). Подскажите что можно сделать. Спасибо.
    вот код страницы шаблона:

    <?php
    /*
    Template Name: Шаблон для особых отметок
    */
    get_header();
    ?>
    <main class="main main__container">
      <section class="services margin">
         <div class="services__container">
           <?php /*Получает элементы указанной таксономии по указанным параметрам.*/
    	$services = get_terms([
    	'taxonomy' => 'group_t',
    	'order' => 'ASC',
    	'orderby' =>'slug'
    	]);
    	?>
    	<div class="services__list">
    	  <?php
    	  $index=0;
              foreach( $services as $service ):
    	  if($service->slug=='04vy'): /*выводим поля которые соответствуют ярлыку*/
    	  ?>
    	  <div class="services__item" id="<?php echo $service->slug;?>">
    	    <h1><?php echo $service->name;?></h1>
    	    <?php the_content();?>	
    	    <?php
    	    $actions = new WP_Query([
    	      'posts_per_page' => -1,
    	      'post_type' => 'services',
    	      'group_t' => $service->slug,
    	      'order' => 'ASC'
    	      ]);
    	    if ( $actions->have_posts() ):
    	    while ( $actions->have_posts() ):
    	    $actions->the_post();
    	    ?>
    	    <div class="services__info">
    		<div class="services__info-h2"><h2><?php the_field('name_s');?></h2></div>
    		<div class="services__info-text"><?php the_field('info');?></div>
    	    </div>
    	    <div class="services__cat">
    		<div class="services__cat-block">
    		   <div class="services__cat-info">
    		      <div class="services__cat-name">Название:</div>
    		      <div class="services__cat-text"><?php the_field('name_s');?></div>
    		   </div>
    		   <div class="services__cat-info">
    		     <div class="services__cat-name">Объем программы:</div>
    		     <div class="services__cat-text"><?php the_field('v_prog');?></div>
    		   </div>
    		   <div class="services__cat-info">									
    		     <div class="services__cat-name">Длительность обучения:</div>
    		     <div class="services__cat-text"><?php the_field('duration');?></div>
    		   </div>
    		   <?php if(get_field('exam')!==''):?>
    		   <div class="services__cat-info">									
    		     <div class="services__cat-name">Экзамены:</div>
    		     <div class="services__cat-text"><?php the_field('exam');?></div>
    		   </div>
    		   <?php endif;?>
    		</div>
    		<div class="services__right">
    		  <div class="services__price">
    		  <?php the_field('price');?><span>Р</span>
    		  </div>
    		  <div class="services__button">
    		  <div class="button button_blue <?php the_field('class_pop')?>">Оставить заявку</div>
    		</div>
    	     </div>
              </div>
    	  <?php
    	    endwhile;
    	    wp_reset_postdata();
    	    endif;
    	    endif;
    	  ?>
           </div>
           <?php
            $index++;
    	endforeach;
           ?>
         </div>
        </div>
      </section>
    </main>
    <?php get_footer();?>
    • Тема изменена 2 года, 4 месяца назад пользователем del90.
    • Тема изменена 2 года, 4 месяца назад пользователем del90.

    Страница, с которой нужна помощь: [войдите, чтобы увидеть ссылку]

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Здравствуйте.

    Нужно прежде всего сравнить исходники страниц что выдаются в броузере, с ломаной и нормальной версткой.
    Можно этой прогой https://winmerge.org/

    Найти отличия.
    Если их нет, то смотреть отличия в js, css..

    Попробуйте

    
    <?php
    endwhile;
    wp_reset_postdata();
    endif; 
    endif;
    ?>
    </div>
    

    заменить на

    
    <?php
    endwhile;
    wp_reset_postdata();
    endif;
    ?>
    </div>
    <?php endif; ?>
    

    т.е. прежде чем закрыть ветвление, нужно закрыть div.

    Спасибо всем за ответы, сделал как посоветовал @fevenili и все встало на свои места.

Просмотр 3 ответов — с 1 по 3 (всего 3)
  • Тема «ломается верстка шаблона» закрыта для новых ответов.