In my situation (in Iran), it is obligatory for a PhD student to publish one or two papers to graduate. Thus, I have a personal and strict rule: I won't be a co-author since I'm getting paid to help my PhD student to graduate. For that reason, I am not looking for any other excuses and/or reasonss (e.g. weakness of student, my substantial work, and so on) to be a co-author. To put it simply, that is my job to help! Obviously, I try to do my job well!