У меня есть домашняя страница с короткими версиями статей, которые ссылаются на страницу статьи [(from this tutorial)][1]
<?php foreach($page->children()->visible()->flip() as $article): ?>
<h1 class="posttitle_home" itemprop="headline">
<a href="<?php echo $article->url() ?>" rel="bookmark"><?php echo html($article->title()) ?></a>
</h1>
<div class="postcontent_home" itemprop="articleBody">
<p><?php echo excerpt($article->text(), 300) ?></p>
</div>
<time class="date_home" datetime="" itemprop="datePublished"><?php echo $article->date('d/m/Y') ?></time>
<a href="<?php echo $article->url() ?>" class="readmore_home">Read More</a>
</article>
<?php endforeach ?>
<?php endforeach ?>
Это прекрасно работает, но я хочу короткие версии пользовательских типов сообщений (из этого урока) Я добавляю операторы if для использования различных тегов h1 в зависимости от шаблона, используемого для статьи, например:
<?php foreach($page->children()->visible()->flip() as $article): ?>
<?php foreach($articles as $article): ?>
<?php if($article->template() == 'article.tutorial'): ?>
<article class="article_home tutorial" role="article" itemscope itemtype="http://schema.org/Article">
<?php elseif($article->template() == 'article.freebie'): ?>
<article class="article_home freebies" role="article" itemscope itemtype="http://schema.org/Article">
<?php elseif($article->template() == 'article.review'): ?>
<article class="article_home review" role="article" itemscope itemtype="http://schema.org/Article">
<?php endif ?>
<h1 class="posttitle_home" itemprop="headline">
<a href="<?php echo $article->url() ?>" rel="bookmark"><?php echo html($article->title()) ?></a>
</h1>
<div class="postcontent_home" itemprop="articleBody">
<p><?php echo excerpt($article->text(), 300) ?></p>
</div>
<time class="date_home" datetime="" itemprop="datePublished"><?php echo $article->date('d/m/Y') ?></time>
<a href="<?php echo $article->url() ?>" class="readmore_home">Read More</a>
</article>
<?php endforeach ?>
<?php endforeach ?>
Я получаю сообщение об ошибке, и страница не работает. Я php noob, поэтому любая помощь будет потрясающей. Спасибо
Я решил проблему, удалив внутренний foreach
foreach
<?php foreach($articles as $article): ?>
if
elseif
endif
<?php endforeach ?>
endforeach
Других решений пока нет …