帖子顶部的快捷码输出

时间:2015-08-07 作者:Asif Mushtaq

我正在使用此代码创建短代码。当我在页面中放置短代码时,它会显示在内容的顶部。

<?php function SkypeChat(){ ?>
 <script type="text/javascript" src="http://www.skypeassets.com/i/scom/js/skype-uri.js"></script>
<div id="SkypeButton_Call_merchando.group_1">
<script type="text/javascript">
Skype.ui({
"name": "chat",
"element": "SkypeButton_Call_merchando.group_1",
"participants": ["merchando.group"],
"imageSize": 32
});
</script>
</div>
<?php } add_shortcode( \'SkypeButton\', \'SkypeChat\' ); ?>
我已经尝试了return方法,但输出仍然相同。

1 个回复
SO网友:Kevin Fodness

函数将内容打印到屏幕上,而不是返回内容。因此,当在可过滤变量中构建页面内容时调用短代码时,会调用函数并在呈现其余页面内容之前打印内容。

如果像这样修改函数,应该会得到更好的结果:

<?php function SkypeChat() {
    return <<<HTML
<script type="text/javascript" src="http://www.skypeassets.com/i/scom/js/skype-uri.js"></script>
<div id="SkypeButton_Call_merchando.group_1">
<script type="text/javascript">
  Skype.ui({
    "name": "chat",
    "element": "SkypeButton_Call_merchando.group_1",
    "participants": ["merchando.group"],
    "imageSize": 32
  });
</script>
</div>
HTML;
}
add_shortcode( \'SkypeButton\', \'SkypeChat\' ); ?>
更好的方法是只使用您的短代码包含div,并使用wp\\u enqueue\\u scripts操作挂钩将JavaScript排队。

结束

相关推荐

排除Plugins.php HTTP安装路径与单个插件的HTTPS的故障

我正在尝试对插件中显示的安装路径进行故障排除。php作为我在自己的网站上安装的插件,我最初并没有编写该插件。当我的站点的其余部分是HTTPS时,此插件引用和安装的所有资源都会显示为混合内容HTTP。我一直在玩弄下面的代码段,但它似乎没有起到什么作用,也没有解决问题。有人能指出我遗漏了什么吗? /** * registers scripts and stylesheets */ public function register_assets() {&