如何解决WooCommerce产品变化图像的Elementor自定义动态标签
我正在为Tile公司建立一个网站,其中Tile(产品)将具有多种变体(瓷砖颜色/纹理)。
我想在“产品”页面上的图库中显示“变体”图像,但是似乎没有插件可以做到这一点。
这样,我想尝试制作一个可以从Elementor中的Gallery组件调用的自定义动态代码。然后可以将其放置在“产品”页面上我喜欢的位置,并进行适当的样式设置。
我在Elementor博客上找到了此自定义动态标签代码,但没有知识对其进行自定义以提取当前产品的“变化”图片。到目前为止,我所做的就是将原始标签名称更改为“ tile_variations”
// custom tile_variations_Tag dynamic tag
add_action( 'elementor/dynamic_tags/register_tags',function( $dynamic_tags ) {
class tile_variations_Tag extends \Elementor\Core\DynamicTags\Tag {
public function get_name() {
return 'tile_variations_Tag';
}
public function get_categories() {
return [ 'number' ];
}
public function get_group() {
return [ 'site' ];
}
public function get_title() {
return 'Tile Variations';
}
protected function _register_controls() {
$this->add_control(
'fields',[
'label' => __( 'Fields','text-domain' ),'type' => 'text',]
);
}
public function render() {
$fields = $this->get_settings( 'fields' );
$sum = 0;
$count = 0;
$value = 0;
// Make sure that ACF if installed and activated
if ( ! function_exists( 'get_field' ) ) {
echo 0;
return;
}
foreach ( explode( ',',$fields ) as $index => $field_name ) {
$field = get_field( $field_name );
if ( (int) $field > 0 ) {
$sum += (int) $field;
$count++;
}
}
if ( 0 !== $count ) {
$value = $sum / $count;
}
echo $value;
}
}
$dynamic_tags->register_tag( 'tile_variations_Tag' );
} );
有人可以提供任何建议吗?非常感谢。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。