我有视觉作曲家,其中包含全部主题。当我在编辑器的页面中放入以下网格短代码时,它可以正常工作。
[vc_basic_grid post_type =“post_type”max_items =“10”item =“masonryGrid_SlideFromLeft”grid_id =“vc_gid:1458178666639-80ebf3775500c87d35de078c3422fe96-10”taxonomies =“555”]
但是,当我使用do_action调用完全相同的代码时,它会出现以下javascript错误。我检查了html输出,使用do_action就像将短代码放在编辑器中一样。
错误:语法错误,无法识别的表达式:{'status':'Nothing found'} s
任何帮助是极大的赞赏。
好吧,你不能通过使用VC的核心短代码直接在模板中输出内容。
为了安全起见,除了现时,VC使用page_id
和shortcode_id
来检查AJAX请求/响应数据。
shortcode_id
由VC自动生成,您无法对其进行编码。
例如,这是您在管理编辑器屏幕上看到的短代码:
[vc_basic_grid post_type="post_type" max_items="10" item="masonryGrid_SlideFromLeft" grid_id="vc_gid:1458178666639-80ebf3775500c87d35de078c3422fe96-10" taxonomies="555"]
假设页面ID是4269,这是前端生成的HTML代码:
<!-- vc_grid start -->
<div class="vc_grid-container-wrapper vc_clearfix">
<div class="vc_grid-container vc_clearfix wpb_content_element vc_masonry_grid" data-initial-loading-animation="zoomIn" data-vc-grid-settings="{"page_id":4269,"style":"all-masonry","action":"vc_get_vc_grid_data","shortcode_id":"1458178666639-80ebf3775500c87d35de078c3422fe96-10","tag":"vc_masonry_grid"}" data-vc-request="http://example.com/wp-admin/admin-ajax.php" data-vc-post-id="4269" data-vc-public-nonce="0641473b09">
</div>
</div>
<!-- vc_grid end -->
现在,如果page_id
和shortcode_id
彼此不匹配,{'status':'Nothing found - $shorcode_id'}
将被抛弃,并且不会显示任何内容。
你可以在vc_grid.min.js
文件中找到更多。
首先,您构建一个新页面并在其上添加一个网格帖子,然后我们得到
_vc_post_settings
post meta,并尝试构建一个新的,然后更新post meta数据现在我们可以通过VC Ajax安全检查以下代码“1513628284966-37b8c3ca-d8ec-1”是VC生成的guid你应该把它改成你的。
Shorcode Mapper
您也可以尝试使用do_shortcode('');
喜欢
do_shortcode('[vc_basic_grid post_type =“post_type”max_items =“10”item =“masonryGrid_SlideFromLeft”grid_id =“vc_gid:1458178666639-80ebf3775500c87d35de078c3422fe96-10”taxonomies =“555”]');
最好的祝福,