Sorting posts by Multiple custom fields in defined order

You can use FIELD or FIND_IN_SET:

return "FIELD(mt1.meta_value, 'Head Teacher', 'Deputy', 'Teacher', 'Support', 'Clerical') ASC, mt2.meta_value ASC";

http://dev.mysql.com/doc/refman/5.0/en/string-functions.html#function_field

Hata!: SQLSTATE[HY000] [1045] Access denied for user 'divattrend_liink'@'localhost' (using password: YES)