t() function doesn't render HTML It is the t() function and the way I assigned value to a body field

$my_body_content = t('!frequency new comment(s) sent to &lt;a href="!url"&gt;!title&lt;/a&gt;', array('!frequency ' =&gt; $frequency , '!url ' =&gt; $url , '!title ' =&gt; $title));
$ewrapper-&gt;field_body-&gt;set(array(
        'value' =&gt; $my_body_content 
) );


the $frequency, $title and $url are already set. This is the configuration of the body field (it allows a tag)



But it is what I get



Why it doesn't render the HTML ?



UPDATE :

I edited the body by UI like this



and it worked! sounds the problem is because of the PHP code
This code should work for you

$link = l($title, $url);
$my_body_content = t('!frequency new comment(s) sent to !link', array('!frequency ' =&gt; $frequency , '!link' =&gt; $link));
$ewrapper-&gt;field_body-&gt;set(array(
    'value' =&gt; $my_body_content 
) );