0

我写了这个函数来通过一个特定的主题钩子来定制一个 divi 主题模块,这个工作但我想把它只应用到自定义的帖子类型结构上,但是我的 if 语句总是返回 true,所以模块是在所有页面上定制的使用该模块,而不仅仅是 struttura 自定义帖子类型。有什么建议么?

add_filter('et_pb_module_shortcode_attributes', 'galleria_divi_acf', 20, 3);
function galleria_divi_acf($props, $atts, $slug) {
    $gallery_module_slugs = array('et_pb_gallery');
    if (!in_array($slug, $gallery_module_slugs)) {
        return $props;
    }
    if (is_singular( 'struttura' )) {
    $props['gallery_ids'] = get_field('galleria_struttura', false, false);
        return $props;
    }
}
4

1 回答 1

0

我错过了 else return $props; 在声明的最后。这是使用 acf 库字段类型填充 divi 库模块的工作代码,对于自定义帖子类型单页非常有用。

add_filter('et_pb_module_shortcode_attributes', 'galleria_divi_acf', 20, 3);
function galleria_divi_acf($props, $atts, $slug) {
    $gallery_module_slugs = array('et_pb_gallery');
    if (!in_array($slug, $gallery_module_slugs)) {
        return $props;
    }
    if ( 'struttura' == get_post_type() ) {
    $props['gallery_ids'] = get_field('galleria_struttura', false, false);
        return $props;
    }
    else return $props;
}
于 2019-06-17T11:04:26.937 回答