Kirby CMS/php:检查文件类型以应用不同的标记?



使用Kirby CMS,我正在尝试提取页面的所有文件并对图像和视频应用不同的标记。在 Kirby 中,有 $file->type(( 命令,我认为我必须在 if 语句中使用它才能使文件失灵,但我当前的代码不起作用。我尝试的是:

<?php
$page = page('PageTitle');
$page_files = $page->files();
?>
<div class="slider-container" id="slider#">
<div class="slider">
<?php foreach($page_files->sortBy('sort', 'asc') as $page_file): ?>
<?php if ($page_file->type() == 'image') { ?>
<div style="background: url('<?= $page_file->url() ?>'); background-size: cover; height: 100vh;"></div>
<?php endif; ?>
<?php endforeach ?>
</div>
</div>

我做错了什么?

我的问题的答案是一个相当明显的答案,我在 if 语句的第一行中使用{而不是:,犯了一个简单的语法错误。这将是代码的正确工作版本,区分图像和视频:

<?php if($file->type() == 'image'): ?>
<!-- markup for image -->
<?php endif ?>
<?php if($file->type() == 'video'): ?>
<!-- markup for video -->
<?php endif ?>

最新更新