Visual Composer custom markup for custom shortcode (vc_map)

Trying to get custom_markup to work with the Visual Composer builder for WordPress.

Found Visual Composer change custom shortcode template and also Visual Composer custom shortcode template – custom_markup display user input but none of them has an answer.

Read More

Here’s some documentation for the vc_map function https://wpbakery.atlassian.net/wiki/pages/viewpage.action?pageId=524332

Here’s my shortcode that I’m using, everything works perfectly, it just looks horrible in the backend ui

vc_map( array(
      "name" => "example",
      "base" => "adwise_vc_example",
      "class" => "",
      "category" => "Plugin name",
      "icon" => "awm_vc_icon",
      "custom_markup" => load_template( ADWISE_VC_DIR . '/vc_templates/adwise_example.php', false),
      "params" => array();

Which currently looks like –> https://dl.dropboxusercontent.com/u/11204765/SS/mac/Screen%20Shot%202016-05-02%20at%2012.52.56.png

In the example below I’ve tried to set custom_markup to test

which results in https://dl.dropboxusercontent.com/u/11204765/SS/mac/Screen%20Shot%202016-05-02%20at%2012.45.55.png

vc_map( array(
      "name" => "example",
      "base" => "adwise_vc_example",
      "class" => "",
      "category" => "Plugin name",
      "icon" => "awm_vc_icon",
      "custom_markup" => "test",
      "params" => array();

My primary/main problem is that I don’t know how to get the values of each attribute for each shortcode to display in the template file.

I’ve looked almost everywhere for a solution, including browsing through other Visual Composer plugins to see how they’ve accomplished this.

Any help would be greatly appreciated!

Related posts

2 comments

  1. What are you trying to accomplish exactly ? From the visual composer core code this is the custom markup for the tabs

    'custom_markup' => '
    <div class="wpb_tabs_holder wpb_holder vc_container_for_children">
    <ul class="tabs_controls">
    </ul>
    %content%
    </div>',
    

    So maybe something like %customattr% will get your desired result?

  2. just add an array with the shortcode attributes in ‘params’

    'params' => array(
                array(
                    'type' => 'textfield',
                    'holder' => 'div',
                    'class' => '',
                    'heading' => __( 'Title' ),
                    'param_name' => 'title',
                    'value' => __( 'Titre' ),
                    'description' => __( 'Title' ),
                ),
                array(
                    'type' => 'textarea',
                    'holder' => 'div',
                    'class' => '',
                    'heading' => __( 'Description' ),
                    'param_name' => 'desc',
                    'value' => __( 'description' ),
                    'description' => __( 'Description' ),
                ),
                array(
                    'type' => 'attach_image',
                    'holder' => 'img',
                    'class' => '',
                    'heading' => __( 'Image' ),
                    'param_name' => 'img_url',
                    'value' => __( '' ),
                    'description' => __( 'Image' ),
                ),
    
            )
    

    and if you want hide a section in the backend just remove the ‘holder’ line

Comments are closed.