2013-05-14 35 views
0

嗨,我一直在与柯比合作。我是一个完整的PHP初学者,但设法完成了很多工作。只需要一些画廊的帮助。PHP(柯比):将图库重定向到子文件夹

在主页上的单个图像显示为缩略图:

<?php foreach($articles as $article): ?> 
    <li class="<?php foreach(str::split($article->tags()) as $tag): ?><?php echo $tag ?> <?php endforeach ?>"> 
    <a href="<?php echo $article->url() ?>" title="<?php echo html($article->title()) ?>"><?php foreach($article->images() as $image): ?><?php echo thumb($image, array('width' => 300, 'quality' => 70)) ?><?php endforeach ?><p><?php echo html($article->title()) ?></p></a> 
    </li>    
<?php endforeach ?> 

在文章页面,我想有一个画廊。 画廊片段:

<?php if($page->hasImages()): ?> 
    <ul class="gallery"> 
     <?php foreach($page->images() as $image): ?> 
      <li> 
      <a href="<?php echo $image->url() ?>"><img src="<?php echo $image->url() ?>" width="<?php echo $image->width() ?>" height="<?php echo $image->height() ?>" alt="<?php echo $image->name() ?>" /></a> 
      </li> 
     <?php endforeach ?> 
    </ul> 
<?php endif ?> 

使用柯比,让我所有的文章项目存储一个文件夹中。但是如果我这样做,并使用上面提到的代码,则图库中的所有图像也会在主页上显示为缩略图。 我想最好是编辑图库片段,以便它可以抓取子文件夹中的图像。但是如何?

谢谢你的帮助!

回答

0

对此的一个解决方案是命名您想在首页上显示的文件,如front.jpg。然后您可以使用$page->images()->find('front.jpg')直接访问此图像。

所以,你得到这样的:

<?php foreach($articles as $article): ?> 
    <li class="<?php foreach(str::split($article->tags()) as $tag): ?><?php echo $tag ?> <?php endforeach ?>"> 
    <a href="<?php echo $article->url() ?>" title="<?php echo html($article->title()) ?>"> 
    <?php echo thumb($article->images()->find('front.jpg'), array('width' => 300, 'quality' => 70)) ?> 
    <p><?php echo html($article->title()) ?></p> 
    </a> 
    </li>    
<?php endforeach ?> 

(请注意,你必须删除内foreach -loop,因为你只显示一个图像。)

画廊片段保持不变。

0

这里尝试:

 <?php foreach($page->image()->yaml() as $image): ?> 
     <?php if($img = $page->image($image)): ?> 

     <img src="<?= $img->url() ?>" alt="<?= $page->title()->html() ?>" width="100%" height="100%" /> 
     <?php endif ?> 
    <?php endforeach ?> 
相关问题