[英]Joomla template override PHP initializing variable
我正在尝试为模板创建替代,以自定义扩展在文章中显示其字段的方式。
我使用的扩展名是DPfields,我正在使用开发人员的参考指南: https ://joomla.digital-peak.com/documentation/162-dpfields/2750-rendering-fields
特别是我要参考以下段落:访问布局中的字段
我已经从用于文章查看的default.php文件创建了一个新的php文件,并且在此新文件(newfile.php)内,我试图显示来自组件DPField的Gallery字段类型。
我已成功将此代码插入到newfile.php中:
<?php
foreach ($this->item->dpfields as $field) {
$gallery = (($field->type)=='gallery');
if (!empty($gallery)) {
echo '<div class="galleryfield">' .$field->value. '</div>';
}
}
?>
因此它可以在输出中正确显示图库。
我的问题是:如何改善该代码? 有没有更好的方法让它工作而不是使用foreach?
提前致谢。
您可以尝试过滤数组。 我猜这不会改变您需要的代码量。
function filterForGalleryType($field) {
return ($field->type) == 'gallery';
}
$galleryFields = array_filter($this->item->dpfields, "filterForGalleryType");
foreach ($galleryFields as $galleryfield) {
echo '<div class="galleryfield">' .$galleryfield->value. '</div>';
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.