Как вытащить контекстные ссылки

Однажды я столкнулся с необходимостью вытащить все action ссылки и табы из нод и сделать из них контекстные ссылки, примерно так, как это делает модуль Contextual links. Этот модуль мне не нравится потому, что он не позволяет настроить отображение контекстных ссылок только в нодах.
Итак, у нас есть какая-то своя тема или модуль и этого...

Как изменить тему для страницы на админскую или наоборот

На сайте могут быть установлены 2 темы: одна админская, другая - тема по умолчанию. Чтобы программно изменить тему на некоторых страницах есть как минимум 3 способа:

Использование хука hook_admin_paths_alter

<?php
/**
 * Implements hook_admin_paths_alter().
 */
function MYMODULE_admin_paths_alter(&$paths) {
 $paths['user/*/edit']...