如何添加2个带有快捷码的按钮

时间:2015-04-15 作者:Furious Theme

我想在我的博客文章中有两个按钮。一个是“DEMO”,另一个是“DEWNLOAD”。对于演示按钮短代码,我使用此代码。

function demo_button($atts,$content = null) {
    extract( shortcode_atts( array(
          \'url\' => \'#\'), $atts ) );
return \'<a href="\'.$url.\'" class="btn btn-default btn-demo">\' . do_shortcode($content) . \'</a>\';
}

add_shortcode(\'demo\'.\'demo_button\')
它在我的网站上运行良好。。当我以同样的方式添加下载按钮时,wordpress仪表板变为白色。下载按钮代码

function download_button($atts, $content = null) {
 extract( shortcode_atts( array(
          \'url\' => \'#\'
), $atts ) );
return \'<a href="\'.$url.\'" class="btn btn-default btn-download">\' . do_shortcode($content) . \'</a>\';
}
add_shortcode(\'download\', \'download_button\');
我不知道为什么。。我是wordpress和PHP的新手。。所以请帮帮我。提前感谢

1 个回复
最合适的回答,由SO网友:websupporter 整理而成

如果输入此快捷码:

[download url="http://example.com"]Download[/download]
它工作得很好。但您必须自己输入链接文本作为内容。我读你的问题时,你可能没注意到这一点。

你的[demo]-Shortcode可穿透错误。要看到这一点,你需要WP_DEBUG 设置为true:

 Notice: Undefined variable: func in \\wp-includes\\shortcodes.php on line 92
这是因为,你的代码说

add_shortcode(\'demo\'.\'demo_button\');
这实际上创建了一个短代码,如[demodemo_button] 没有附加功能。使用逗号代替点:

add_shortcode(\'demo\',\'demo_button\');
如果你这样做了,它也可以正常工作。但同样,您必须添加链接文本作为内容,如下所示:

[demo url="http://example.com"]Linktext[/demo]
如果需要固定链接文本,应查看以下代码段:

function download_button($atts, $content = null) {
 extract( shortcode_atts( array(
          \'url\' => \'#\'
 ), $atts ) );
 return \'<a href="\'.$url.\'" class="btn btn-default btn-download">Download</a>\';
}

结束

相关推荐

Split posts between databases

我的客户要求为基于WP的wordpress(单站点,而不是多站点)提供一个非常具体的解决方案。基本上,他想要的是,假设在1000篇文章之后,应该创建新的数据库(只有5个表,posts,posmeta和3个与分类相关的表),新的文章应该和所有的post meta一起存储在这个数据库中,直到它达到1000篇文章,然后处理重复。具有挑战性的部分是,所有这些数据库必须同时处于活动状态,因此WP应该能够同时访问来自主数据库和所有这些新创建的数据库(有5个表)的帖子。这可能需要hyperdb. 问题包括:如何告诉wp