在WP Bakery(Visual Composer)网格生成器中使用Wordpress Favorite插件简码

时间:2018-11-09 15:36:21

标签: php wordpress visual-composer

我正在尝试在Favorite plugin shortcode中使用Wordpress WP Bakery grid builder,但无法正常工作。

我使用的简码是[favorite_button post_id="{{ post_data:ID }}"]

正确的ID用于数据属性,例如data-postid="123",但对于收藏数,我总是得到data-favoritecount="0"而不是正确的收藏数。因此,该插件仅将计数显示为0:

<span class="simplefavorite-button-count">0</span>

WP Bakery的支持使我指向在this page上使用自定义变量,但是它仍然对我不起作用。这是我到目前为止在子主题function.php中使用的代码:

// custom favorite shortcode for grid builder
add_filter( 'vc_grid_item_shortcodes', 'my_module_add_grid_shortcodes' );
function my_module_add_grid_shortcodes( $shortcodes ) {
    $shortcodes['vc_gitem_favourite'] = array(
        'name' => __( 'Favourite', 'my-text-domain' ),
        'base' => 'vc_gitem_favourite',
        'category' => __( 'Content', 'my-text-domain' ),
        'description' => __( 'Favourite button' ),
        'post_type' => Vc_Grid_Item_Editor::postType(),
    );
    return $shortcodes;
}

// output function
add_shortcode( 'vc_gitem_favourite', 'vc_gitem_favourite_render' );
function vc_gitem_favourite_render($atts) {
    return '[favorite_button post_id="{{ favourite:' . http_build_query( (array) $atts ) . ' }}"]';
}

add_filter( 'vc_gitem_template_attribute_favourite', 'vc_gitem_template_attribute_favourite', 10, 2 );
function vc_gitem_template_attribute_favourite() {
    return get_the_id( $post->ID ); 
}       

您可能会说,PHP不是我的强项。非常感谢您的帮助。

0 个答案:

没有答案