How do you add table column sort functionality to an EntityFieldQuery?
I know this thread is a little old but adding 'field' to the array fixes the issue.

e.g.

$header = array(
  'title' =&gt; array(
    'data' =&gt; t('Date'),
    'type' =&gt; 'field',
    'specifier' =&gt; array(
      'field' =&gt; 'field_articledate',
      'column' =&gt; 'value',
    ),
    'field' =&gt; '', //There is an Isset call that prevents links from showing without this.
  ),
);
$query = new EntityFieldQuery();
$query-&gt;entityCondition('entity_type', 'node')
  -&gt;entityCondition('bundle', 'article')
  -&gt;propertyCondition('status', 1);

$query = $query-&gt;tableSort($header);
$query = $query-&gt;pager(100);

$results = $query-&gt;execute();


See: https://www.drupal.org/node/885014#comment-3464666 for a comment on the issue.