Optionally add image/icon after node title based on boolean content type field?
While this can be on in the page preprocess, and the node template, and probably several other places as well, I would discourage that. It is putting to much logic in the theme, that doesn't belong there. The main advantage of my solution is that the field can look right regardless of where you display it. On a page, in a block, in the header, or essentially anywhere that properly integrates with the Field API.

My solution is as follows

Add a text field, with the boolean Yes/No options

Implement two hooks, hook_field_formatter_info() and hook_field_formatter_view()

function product_field_formatter_info() {
  return array(
    'product_star' =&gt; array(
    'label' =&gt; t('Recommended product'),
    'field types' =&gt; array('text'),
  );
}

function project_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) {
  if ($field['type'] == 'text' &amp;&amp; $display['type'] == 'product_star') {
    return array(0 =&gt; array('#markup' =&gt; '&lt;img src="star.png"&gt;'));
  }
}


Clear the cache

Go to the fields display settings, and set it to "Recommended product"

Profit!