Visual Composer not showing specific page styles

北战南征 提交于 2019-12-13 02:55:21

问题


When I view regular page from visual composer, it works fine like this:

http://vrshealth.com/qc2

Margins, backgrounds, etc are all working.

I needed to make a custom post type "quality-check" and am using archive-quality-check.php to display this and the vc-custom-xxxx styles are not loading for some reason:

http://dev-vrshealth.pantheonsite.io/quality-check/

I did some research and the only thing I could find is that page-specific VC styles don't work with Ajax-loaded pages. But it is not loaded through ajax.

Here is the relevant code from archive-quality-check.php which displays if you haven't already chosen a product lot # to display:

  <?php if ($_SERVER['REQUEST_METHOD'] != 'POST'): ?>

    <div class="col-xs-12 col-md-12" id="page-content">
    <?php
        $post_id4098 = get_post(4098);
        $content = $post_id4098->post_content;
        $content = apply_filters('the_content', $content);
        $content = str_replace(']]>', ']]>', $content);
        WPBMap::addAllMappedShortcodes();
        echo do_shortcode($content);
    ?>
    </div>

I feel like I must be missing something here, like a function to output metadata or some type of custom css, but I can't find any documentation which explains how.


回答1:


Had the same problem. Just insert this before echoing content.

get_post_meta( $id, '_wpb_shortcodes_custom_css', true  )

Worked for me on latest WP and VC versions.




回答2:


Hi I had the same issues, so I have searched in the pluggin, and finaly this works for me :

$vcM = Vc_Manager::getInstance();
$vc = $vcM->vc();
$vc->addShortcodesCustomCss($pop_up_id);



回答3:


The answer that Laurent gave worked great for me! However I would suggest creating a function for it in your functions.php file. Maybe something like this:

  function vc_custom_css($id) {
        $shortcodes_custom_css = get_post_meta( $id, '_wpb_shortcodes_custom_css', true );
        if ( ! empty( $shortcodes_custom_css ) ) {
            echo '<style type="text/css">';
            echo $shortcodes_custom_css;
            echo '</style>';
        }
    }

Then you can just use vc_custom_css($yourPostID); whenever it is required.



来源:https://stackoverflow.com/questions/44593180/visual-composer-not-showing-specific-page-styles

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!