将徽章添加到新的博客文章标题

时间:2014-09-09 作者:kalyan

我希望在我的博客标题中添加一个新的小图标/徽章(可能是5-7天前)。我最好有一个闪烁的gif图像。现在,如何执行此操作?

首先,我尝试了这个,我从一个WP论坛帖子得到的。

add_filter( \'post_content\', \'addBadge2Title\' );
function addBadge2Title(){
    $seconds = strtotime( "now" ) - strtotime( get_the_date( "Y/m/d" ) );
    $badge= get_stylesheet_directory_uri().\'/library/images/new_ribbon.gif\';
    if ( $seconds < 10950400 ) {
        echo \'<img class="new_ribbon" width="75"  height="75" src="\'.$badge.\'" >\';
    }
}
但什么都没有出现。

代码资源:http://wordpress.org/support/topic/plugin-to-add-a-new-badge-to-title-1?replies=3#post-2499846

1 个回复
SO网友:aifrim

您要编辑title, 而不是content.

检查此filters 您要使用。

如果要编辑title 你应该add_filter 并对其进行修改(the_title). 像这样:

add_filter(\'the_title\', \'addBadge2Title\');
function addBadge2Title($title)
{
    $seconds = strtotime("now") - strtotime(get_the_date("Y/m/d"));
    $badge = get_stylesheet_directory_uri() . \'/library/images/new_ribbon.gif\';
    if ($seconds < 10950400) {
        $title = \'<img class="new_ribbon" width="75"  height="75" src="\' . $badge . \'" >\' . $title;
    }
    return $title;
}
编辑:仅对特定类别使用徽章如果要对特定类别使用此代码,您有几个选项

第一次删除add_filter(\'the_title\', \'addBadge2Title\'); 只保留function 在中声明functiosn.phparchive-{$category-slug}.php 文件按如下方式添加和删除筛选器

if(have_posts()) : while(have_posts()) : the_post()

    add_filter(\'the_title\', \'addBadge2Title\');
    the_title();
    remove_filter(\'the_title\', \'addBadge2Title\');

endwhile; endif;
检查当前帖子是否包含您希望标题显示为徽章的类别。修改function 通过添加has_category 像这样:

function addBadge2Title($title)
{
    // return the $title unmodified if the post does not have the category
    if(!has_category(\'badge-category\'))
        return $title;

    // add the badge
    $seconds = strtotime("now") - strtotime(get_the_date("Y/m/d"));
    $badge = get_stylesheet_directory_uri() . \'/library/images/new_ribbon.gif\';
    if ($seconds < 10950400) {
        $title = \'<img class="new_ribbon" width="75"  height="75" src="\' . $badge . \'" >\' . $title;
    }
    return $title;
}

结束

相关推荐