SELECT name_table_dan.ID FROM wp_usermeta name_table_dan
INNER JOIN wp_usermeta name_table_newman ON name_table_dan.ID = name_table_newman.ID
...
WHERE
(name_table_dan.meta_key = 'first_name' OR name_table_dan.meta_key = 'last_name' AND name_table_dan.meta_value LIKE '%dan%')
AND
(name_table_newman.meta_key = 'first_name' OR name_table_newman.meta_key = 'last_name' AND name_table_dan.meta_value LIKE '%newman%')
...
Non è la tua traduzione completa della query, ma hai un'idea. Se MySQL ha problemi con così tante sottoquery, prova questa.