Button Shortcode

时间:2011-10-14 作者:AndrettiMilas

我正在尝试创建一个自定义按钮快捷码,具有多种颜色和大小选项。然而,当我试图在帖子中使用快捷码时,却没有显示出来。

我的职能

function btn($atts, $content = null) {
   extract(shortcode_atts(array(\'link\' => \'#\', \'color\' => \'teal\' , \'size\' => \'large\'), $atts));
   return \'<a class="btn \'.$size.\'" href="\'.$link.\'" style="background:\'.$color.\';"><span>\' . do_shortcode($content) . \'</span></a>\';
}
如何使用快捷码

[btn color="blue" size="large"]Button Text[/btn]
我的CSS

/* Buttons */
.btn {background:#222 url(img/alert-overlay.png) repeat-x; display:inline-block; padding:5px 10px 6px; color:#fff!important; text-decoration:none; font-weight:bold; line-height:1; -moz-border-radius:5px; -webkit-border-radius:5px; position:relative; cursor:pointer; -moz-box-shadow:0 1px 3px rgba(0,0,0,0.5); -webkit-box-shadow:0 1px 3px rgba(0,0,0,0.5); text-shadow:0 -1px 1px rgba(0,0,0,0.25); border-bottom:1px solid rgba(0,0,0,0.25)}
.btn:active{-webkit-transform:translateY(1px); -moz-transform:translateY(1px)}

/* Sizes ---------- */
.small { font-size: 11px; margin:10px 0 }
.medium { font-size: 13px; margin:10px 0 }
.large { font-size: 14px; padding: 8px 14px 9px; margin:10px 0 }

/* Colors ---------- */
.blue { background-color: #2daebf }
.red { background-color: #e33100 }
.magenta { background-color: #a9014b }
.orange { background-color: #ff5c00 }
.yellow { background-color:#ffb515 }

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

How about this?

<?php
function btn($atts, $content = null) {
   extract(shortcode_atts(array(\'link\' => \'#\', \'color\' => \'teal\' , \'size\' => \'large\'), $atts));
   return \'<a class="btn \'.$size.\'" href="\'.$link.\'" style="background:\'.$color.\';"><span>\' . $content . \'</span></a>\';
}

add_shortcode(\'btn\', \'btn\');
?>
结束

相关推荐

Shortcode content filter?

我在找东西,但不知道是什么。我有一个短码,我们叫它[短码]。用户将在其中输入HTML标记,主要是图像,但也包括链接、链接中的图像等,例如:[shortcode] <img src=\"http://www.site.com/myimage.jpg\" /> <a href=\"http://www.blabla.com\"><img src=\"http://www.site.com/myimage2.jpg\" /></a> (..