在小部件标题内插入跨度,以使第二个单词具有不同的颜色

时间:2013-01-19 作者:Samia Ruponti

我正在尝试将我的小部件标题设置为两种颜色;第一个字是白色的,第二个字是黄色的。我不知道如何在每个小部件标题的第二个单词之前插入一个span,以便为span添加颜色。

3 个回复
最合适的回答,由SO网友:Nabil Kadimi 整理而成

/**
 * Wraps the first half of the provided string inside a span with the class lol_class.
 *
 * @param  string  $title  The string.
 * @return string          The modified string.
 */
function wpsa_82312_widget_title($title) {
    // Cut the title into two halves.
    $halves = explode(\' \', $title, 2);

    // Throw first word inside a span.
    $title = \'<span class="lol_class">\' . $halves[0] . \'</span>\';

    // Add the remaining words if any.
    if (isset($halves[1])) {
        $title = $title . \' \' . $halves[1];
    }

    return $title;
}

// Hook our function into the WordPress system.
add_filter(\'widget_title\', \'wpsa_82312_widget_title\');
在最近的一个项目中,我的客户希望在她的WordPress博客上为小部件提供图形标题。不幸的是,小部件没有那么容易主题化。在CSS中也不能这样做。

SO网友:Abhijit

如果是文本小部件,它支持HTML标记(如span). 您可以使用span 以及该小部件标题中的其他标记。只需声明span 样式表/CSS文件中该标题标记的CSS。

SO网友:Jawed

对于页面标题,请编辑页面。php并替换_title();使用:

$words = explode(\' \', the_title(\'\', \'\',  false));
$words[0] = \'<span>\'.$words[0].\'</span>\';
$title = implode(\' \', $words);
echo $title;
或者对于一般的所有标题(这将在任何标题的第一个单词周围添加跨度,例如文章标题、页面标题,并且\\u标题也用于页面列表中)-将类似的内容添加到函数中。主题的php:

add_filter(\'the_title\', \'span_first_word\');
function span_first_word($title) {
$words = explode(\' \', $title);
$words[0] = \'<span>\'.$words[0].\'</span>\';
$title = implode(\' \', $words);
return $title;
}

结束

相关推荐

Restore Image Title Text

在WordPress 3.5中,将图像插入帖子时,图像标记中不包括title属性。我正在使用的Lightbox插件要求在图像上显示标题标签;此外,我喜欢有悬停工具提示。是否有某种方法可以恢复以前包含title属性的行为?