主要按钮类和次要按钮类

时间:2014-09-02 作者:irishrunner16

我正在尝试使用默认的WordPress按钮类在函数(下面)中设置一些按钮的样式,但没有显示这些按钮(只显示超链接文本)。

我还尝试停用所有插件并切换到默认的WP主题,以查看按钮是否会显示,但这个问题仍然存在。所以可能是因为a 标签还是类本身?

功能如下:

add_filter( \'upme_profile_edit_bar\',\'upme_profile_edit_bar\', 10, 3 );
function upme_profile_edit_bar( $edit_buttons , $id, $params ) {
    $edit_buttons .= \'<a class="button button-primary" href="http://myurlhere.com" >Custom Button 1</a>\';   
    $edit_buttons .= \'<a class="button button-secondary" href="http://myotherurlhere.com" >Custom Button 2</a>\';
    return $edit_buttons;
}
谢谢你的帮助。

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

看起来您正试图在前端使用WordPress管理样式中的类。但是,不会加载这些样式。你有两个选择,我不推荐其中一个。

方法1:这样做,我建议您只需将所需的按钮样式复制并粘贴到child theme 或自定义CSS插件(example, 众多中的一个)。

这是将它们拉出并清理干净的第一步:

.button,
.button-primary,
.button-secondary {
    display: inline-block;
    text-decoration: none;
    font-size: 13px;
    line-height: 26px;
    height: 28px;
    margin: 0;
    padding: 0 10px 1px;
    cursor: pointer;
    border-width: 1px;
    border-style: solid;
    -webkit-appearance: none;
    -webkit-border-radius: 3px;
    border-radius: 3px;
    white-space: nowrap;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.button,
.button-secondary {
    color: #555;
    border-color: #cccccc;
    background: #f7f7f7;
    -webkit-box-shadow: inset 0 1px 0 #fff, 0 1px 0 rgba(0,0,0,.08);
    box-shadow: inset 0 1px 0 #fff, 0 1px 0 rgba(0,0,0,.08);
    vertical-align: top;
}

p .button {
    vertical-align: baseline;
}

.button:hover,
.button-secondary:hover,
.button:focus,
.button-secondary:focus {
    background: #fafafa;
    border-color: #999;
    color: #222;
}

.button:focus,
.button-secondary:focus {
    -webkit-box-shadow: 1px 1px 1px rgba(0,0,0,.2);
    box-shadow: 1px 1px 1px rgba(0,0,0,.2);
}

.button:active,
.button-secondary:active {
    background: #eee;
    border-color: #999;
    color: #333;
    -webkit-box-shadow: inset 0 2px 5px -3px rgba( 0, 0, 0, 0.5 );
    box-shadow: inset 0 2px 5px -3px rgba( 0, 0, 0, 0.5 );
}

.button-primary {
    background: #2ea2cc;
    border-color: #0074a2;
    -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.5), 0 1px 0 rgba(0,0,0,.15);
    box-shadow: inset 0 1px 0 rgba(120,200,230,0.5), 0 1px 0 rgba(0,0,0,.15);
    color: #fff;
    text-decoration: none;
}

.button-primary:hover,
.button-primary:focus {
    background: #1e8cbe;
    border-color: #0074a2;
    -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
    box-shadow: inset 0 1px 0 rgba(120,200,230,0.6);
    color: #fff;
}

.button-primary:focus {
    border-color: #0e3950;
    -webkit-box-shadow: inset 0 1px 0 rgba(120,200,230,0.6), 1px 1px 2px rgba(0,0,0,0.4);
    box-shadow: inset 0 1px 0 rgba(120,200,230,0.6), 1px 1px 2px rgba(0,0,0,0.4);
}

.button-primary:active {
    background: #1b7aa6;
    border-color: #005684;
    color: rgba(255,255,255,0.95);
    -webkit-box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
    box-shadow: inset 0 1px 0 rgba(0,0,0,0.1);
    vertical-align: top;
}
这具有以下优点:

确保即使WordPress更改类名或样式,也能保持按钮样式

    方式2:不要这样做,我甚至不太清楚为什么要包括这个,但也许它会对某人有用。另一种方法是在前端加载WordPress按钮样式。这具有与上述方式#1的优点相反的所有缺点。

    要做到这一点,需要做两件事:1。加载样式表。1、更改标记,因为所有样式只有在与类包装在一个元素中时才起作用wp-core-ui. (这应该告诉你,加载这些样式不是有意的,是个坏主意!

    要加载样式,我会在子主题的functions.php 文件、自定义插件或mu-plugin:

    function wpse159952_load_wp_button_styles() {
        wp_enqueue_style( \'wpse159952_wp_button_styles\', includes_url() . \'css/buttons.css\', array(), get_bloginfo( \'version\' ) );
    }
    add_action( \'wp_enqueue_scripts\', \'wpse159952_load_wp_button_styles\' );
    

结束

相关推荐

Sliders with buttons

我正在寻找一个滑块插件,它允许我在滑块中插入其他按钮,而不是下一个和上一个数字,我的意思是将用户重定向到不同页面的按钮,等等。。。我会很感激你的信息!当做