提问者:小点点

WordPress-背景图像的内联样式短代码不渲染


我在样式属性中有一个短代码:

<div style="background-image: url("[my-shortcode id="1"]");"></div>

问题是不会呈现短代码。

我发现在函数safecss\u filter\u attr()。

由于安全限制,此特定案例不起作用。

有没有其他方法可以在div属性中渲染短代码?


共3个答案

匿名用户

您是否尝试在页面上回显您的短代码的输出,以查看它返回的内容以确保其正常工作?

<?php echo do_shortcode('[my-shortcode id="1"]'); ?>

您也可以尝试将其保存在变量中。nospan是必需的,因为WordPress在

<?php
  $shortcode_url = do_shortcode('[my-shortcode id="1" nospan="true"]');
?>
<div style="background-image: url(<?php echo $shortcode_url; ?>);"></div>

匿名用户

你可以这样试试,

function my_shortcode_function() { 
     $i = '<p>Hello World!</p>';
    return $i;
} 
add_shortcode('my-shortcode', 'my_shortcode_function');


<div style="background-image:url('<?php echo do_shortcode('[my-shortcode]'); ?>');"></div>

匿名用户

我需要在post内容(VisualComposer html元素)中添加短代码。

所以我需要渲染它与整个html代码:

<div style="background-image: url("[acf field='my_field' post_id='123']");"></div>