@Zwed

Почему отображаеться index.php вместо single.php?

Здравствуйте!
Делаю свой шаблон на движке Wordpress. В этом не силён, но решил попробовать, поэтому делаю всё по видео урокам и информации в интернете. Застрял на отоброжении страницы с постом. Вроде и УРЛ меняеться и страница перезагружаеться но отображаеться index.php.
На данный момент у меня есть такие файлы связанные с single.php:
  • index.php
  • single.php
  • content.php
  • content-single.php

Настройки постоянных ссылок: "Простые". Все плагины отключены. Пользуюсь WampServer'ом.

Часть вывода постов index.php:
<article>
        <?php
          $paged = (get_query_var('paged')) ? get_query_var('paged') : 1;
          $temp = $wp_query;
          $wp_query = null;
          $wp_query = new WP_Query();
          $wp_query->query('showposts=2&post_type=post&paged='.$paged.'&cat=4');
          while ($wp_query->have_posts()) : $wp_query->the_post();
          //Content
            get_template_part('template-parts/content', get_post_format());
            wp_reset_postdata();
          endwhile;
        ?>
</article>


Код в файле content.php в папке template-parts:
<div id="post-<?php the_ID(); ?>" <?php post_class('row new_article') ?>>
  <div class="col-xs-12 col-sm-4 col-xl-3 no-gutters">
    <?php if ( has_post_thumbnail() ) : ?>
      <a href="<?php the_permalink($post); ?>"><img class="post_thumbnails media-object" src="<?php the_post_thumbnail_url(); ?>" alt="Olaines 1.vidusskola - jaunumi"></a>
    <?php endif; ?>
  </div>
  <div class="col-xs-10 col-xs-push-1 col-sm-8 col-sm-push-0 col-xl-9">
    <h1 class="post_heading"><a href="<?php the_permalink($post); ?>"><?php the_title();?></a></h1>
    </br>
    <div class="excerpt">
      <?php the_excerpt(); ?>
    </div>
    <a href="<?php the_permalink($post); ?>"><button type="button" class="btn btn-primary"><?php echo get_theme_mod('main_readmore_button'); ?></button></a>
  </div>
</div>


Весь код в single.php в папке template-parts:
<?php get_header(); ?>
<!--Slider-->
  <?php
    get_template_part('template-parts/slider');
  ?>
<!--Slider-->
<div class="line_gradient"></div>

<div class="container-fluid" id="news">
  <div class="row">
    <!--Main (news)-->
    <div class="col-xs-12 col-sm-8">
      <img class="media-object" id="img_newspaper" src="<?php bloginfo("template_url"); ?>/images/newspaper.png" alt="Olaines 1.vidusskola - jaunumi">
      <h1 id="title_jaunumi"><?php echo get_theme_mod('main_news'); ?></h1>
      <div id="line_gradient_news_top" class="line_gradient"></div>
      <article id="post-<?php the_ID(); ?>" <?php post_class('new_article') ?>>
        <?php
          $temp = $wp_query;
          $wp_query = null;
          $wp_query = new WP_Query();
          $wp_query->query('showposts=2&post_type=post&cat=4');
          while ($wp_query->have_posts()) : $wp_query->the_post();

          //Content
          get_template_part('template-parts/content', 'single');

          wp_reset_postdata();
          endwhile;
        ?>
      </article>
      <div id="line_gradient_news_bottom" class="line_gradient"></div>
    </div>
    <!--Left sidebar-->
    <?php get_sidebar();  ?>
    <!--Left sidebar-->
  </div>
</div>
<?php get_footer(); ?>


Весь код в content-single.php в папке template-parts:
<div id="post-<?php the_ID(); ?>" <?php post_class('new_article row') ?> >
  <div class="col-xs-12 col-sm-4 col-xl-3 no-gutters">
    <?php if ( has_post_thumbnail() ) : ?>
      <img class="post_thumbnails media-object" src="<?php the_post_thumbnail_url(); ?>" alt="Olaines 1.vidusskola - jaunumi">
    <?php endif; ?>
  </div>
  <div class="col-xs-10 col-xs-push-1 col-sm-8 col-sm-push-0 col-xl-9">
    <h1 class="post_heading"><?php the_title();?></h1>
    </br>
    <div class="content">
      <?php the_content(); ?>
    </div>
  </div>
</div>


Вроде делаю всё правильно и content.php видит а single.php не видит.
Заранее благодарен за помощь!
  • Вопрос задан
  • 119 просмотров
Решения вопроса 1
lamer350
@lamer350
กำลังสูงสุด
Скорее всего у вас доходит чтение файла до строчки get_template_part('template-parts/slider'); и после получения ошибки далее ничего не воспроизводится.
Ошибка в том что вы и так в папке template-parts, а значит вы пытаетесь обратится к папке template-parts/template-parts
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы