首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >WordPress -背景图像不呈现的内联样式快捷代码

WordPress -背景图像不呈现的内联样式快捷代码
EN

Stack Overflow用户
提问于 2018-03-07 18:02:41
回答 3查看 424关注 0票数 0

我在style属性中有一个短码:

代码语言:javascript
运行
复制
<div style="background-image: url("[my-shortcode id="1"]");"></div>

问题是短代码将不会被呈现。

我发现在函数safecss_filter_attr() (在w-includes/kses.php中,第:1688行)中,正则表达式过滤(并返回一个空字符串。

由于安全限制,此特定情况不起作用。

有没有其他方法可以在div属性中呈现快捷码?

EN

回答 3

Stack Overflow用户

发布于 2018-03-07 18:50:56

你有没有尝试在页面上echo你的短代码的输出,看看它返回了什么,以确保它能正常工作?

代码语言:javascript
运行
复制
<?php echo do_shortcode('[my-shortcode id="1"]'); ?>

您也可以尝试将其保存在变量中。nospan是必需的,因为默认情况下,WordPress会在<span>内部输出它:

代码语言:javascript
运行
复制
<?php
  $shortcode_url = do_shortcode('[my-shortcode id="1" nospan="true"]');
?>
<div style="background-image: url(<?php echo $shortcode_url; ?>);"></div>
票数 0
EN

Stack Overflow用户

发布于 2018-03-07 18:56:11

你可以试着这样做,

代码语言:javascript
运行
复制
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>
票数 0
EN

Stack Overflow用户

发布于 2018-03-08 03:16:07

我需要把短码放在帖子内容(visual composer html元素)中。

所以我需要用整个html代码来呈现它:

代码语言:javascript
运行
复制
<div style="background-image: url("[acf field='my_field' post_id='123']");"></div>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49149046

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档