在 Visual Composer 自定义网格模板上显示自定义字段图像
Posted
技术标签:
【中文标题】在 Visual Composer 自定义网格模板上显示自定义字段图像【英文标题】:Display a custom field image on Visual Composer Custom Grid Template 【发布时间】:2016-09-19 12:58:12 【问题描述】:我正在使用 Visual Composer 开发一个 WP 网站。
在主页中,我插入了一个“Post Grid”元素,它加载特定的自定义帖子类型。
此自定义帖子有多个自定义字段(使用高级自定义字段插件制作):其中一个字段是图像。
此帖子网格使用自定义网格来显示这些自定义字段。
当我预览页面时,它会正确显示帖子缩略图(帖子特色图片)、一些文本自定义字段,但辅助图像(使用自定义字段创建)仅显示文本(在特定的数组对象或 ID 中)图片)。
如何渲染图像?是否可以为该自定义字段(例如 omg html 标签)插入一些代码以避免文本呈现?
提前致谢, 弗朗切斯科
【问题讨论】:
【参考方案1】:打开文件 js_composer\include\classes\vendors\plugins\acf\class-vc-gitem-acf-shortcode.php
并把这段代码:放在return之前,可以注释掉原来的return:
$f = get_field_object($field_key);
if ( $f['type'] == 'image')
return '<div ' . $field_key . ' class="' . esc_attr( $css_class ) . '">'
. '<img src=" acf' . ( ! empty( $field_key ) ? ':' . $field_key : '' ) . ' ">'
. '</div>';
else
return '<div ' . $field_key . ' class="' . esc_attr( $css_class ) . '">'
. ' acf' . ( ! empty( $field_key ) ? ':' . $field_key : '' ) . ' '
. '</div>';
【讨论】:
【参考方案2】:我也遇到了这个问题。
打开文件 js_composer\include\classes\vendors\plugins\acf\class-vc-gitem-acf-shortcode.php
并把这段代码:放在return之前,可以注释掉原来的return:
$allFields = acf_get_fields($field_group);
for ($i=0; $i < count($allFields); $i++)
if ( $field_key == $allFields[$i]['key'] && $allFields[$i]['type'] == 'image')
return '<div ' . $field_key . ' class="' . esc_attr( $css_class ) . '">'
. '<img src=" acf' . ( ! empty( $field_key ) ? ':' . $field_key : '' ) . ' ">'
. '</div>';
else
return '<div ' . $field_key . ' class="' . esc_attr( $css_class ) . '">'
. ' acf' . ( ! empty( $field_key ) ? ':' . $field_key : '' ) . ' '
. '</div>';
这个工作是针对图像字段的,你可以对其他类型的字段做更多的else。
您可以在此处查看我的文件和一些信息:https://github.com/ramonMontanhes/visualcomposer-acf
【讨论】:
【参考方案3】:您确定您正在使用确切的代码从高级自定义字段选项中获取图像吗?
这是您需要的确切代码:
<?php
$image = get_field('image');
if( !empty($image) ): ?>
<img src="<?php echo $image['url']; ?>" />
<?php endif; ?>
只需将这个id替换成你自己的字段id,就会变成如下图:
get_field('your own field id');
希望,这是有道理的,如果您仍需要任何帮助,请告诉我。谢谢
【讨论】:
以上是关于在 Visual Composer 自定义网格模板上显示自定义字段图像的主要内容,如果未能解决你的问题,请参考以下文章
如何在自定义模板 Visual Studio 2019 中添加多个选项
asp.net core kendo ui 网格自定义命令模板不起作用