Вариант решения:
В нашей функции добавления меню (wp_nav_menu) есть замечательный атрибут $walker.
По ссылке выше есть пример его использования. Не буду его приводить полностью, лишь необходимый отрывок.
$item_output = sprintf(
'%1$s<a%2$s>%3$s%4$s%5$s</a>%6$s',
$args->before,
$attributes,
$args->link_before,
apply_filters( 'the_title', $item->title, $item->ID ),
$args->link_after,
$args->after
);
Меняем на
$item_output = sprintf(
'%1$s<a%2$s><span
data-hover="%3$s%4$s%5$s">%3$s%4$s%5$s</span></a>%6$s',
$args->before,
$attributes,
$args->link_before,
apply_filters( 'the_title', $item->title, $item->ID ),
$args->link_after,
$args->after
);
И получаем необходимый результат. Разобравшись что к чему вы можете сделать мелкие изменения для себя ^_^