A variety in the sense of a universal algebra is just a bunch of algebraic structures equipped with functions of certain arities and certain relations. For example, the variety of monoids has two functions, one of arity zero, a constant $1$, and one of arity two, a binary operation $\cdot$, satisfying the relations $1 \cdot m = m \cdot 1 = m$ and $m \cdot (n \cdot k) = (m \cdot n) \cdot k$. A homomorphism between two objects of a variety is a map preserving all the functions. For example, a homomorphism between two monoids $M,N$ is a map $f : M \to N$ of the underlying sets such that $f(1)=1$ and $f(m \cdot n) = f(m) \cdot f(n)$ for all $m,n \in M$. This is not a matter of convention as many might think; it follows the general paradigm that homomorphisms preserve the whole structure.
In fact, with this notion, every variety constitutes a category. You always have to remember in which category you are! When you consider a monoid $M$ as a semigroup $U(M)$, i.e. you forget the unit $1$, you have got a different object. You may regard $U(-)$ as the forgetful functor from the category of monoids to the category of semigroups. It is important to keep in mind that this is not the identity; although many authors etc. treat it as such. This causes many confusions. But when you keep in mind that $U$ takes you into another category, it is clear as crystal: A homomorphism $U(M) \to U(N)$ is by definition a map of the underlying sets which preserves $\cdot$, whereas a homomorphism $M \to N$ is by definition a map of the underlying sets which preserves $\cdot$ and $1$.
Now the same story of rings and rngs (a rng is an abelian group with a distributive and associative multiplication; so roughly a ring without the requirement of a unit). By abuse of notation, let us denote the forgetful functor from rings to rngs again by $U$. Let $R,S$ be rings. Then, by definition, a homomorphism $f : R \to S$ is a map preserving all the structure, i.e. $f(0)=0$, $f(x+y)=f(x)+f(y)$, $f(-x)=-f(x)$, $f(x \cdot y) = f(x) \cdot f(y)$, $f(1)=1$ for all $x,y \in R$. Now the condition $f(x+y)=f(x)+f(y)$ for all $x,y \in R$ already implies $f(0)=0$ and $f(-x)=-f(x)$ for all $x \in R$. Many authors are motivated by this to drop these two conditions from the definition, which in my opinion is a bad idea. It is just a lemma that you only have to check that $+$ is is preserved; the correct definition is just a special case of the more general one in universal algebra, which you should even keep in mind when you don't study universal algebra because algebraic structures never come alone. Of course, this discussion already applies to the variety of groups, see Hurkyl's answer. In contrast to that definition of homomorphism of rings, a homomorphism of rngs is a map preserving $0,+,-,\cdot$ (there is no way to talk about $1$). In particular, a homomorphism $R \to S$ yields a homomorphism $U(R) \to U(S)$, but not vice versa.
Now it is easy to answer the question whether the zero map is a homomorphism. Namely, it depends on the category in which you are working. If a homomorphism of rings $f : R \to S$ happens to be the zero map, we get $1 = f(1) = 0$, thus $S = 0$. So yes, there is a zero homomorphism, but only when the target ring is trivial. In fact, something stronger is true: When $R = 0$, then also $S = 0$. One says that the zero ring is a strict initial object. In contrast to that, for all rngs $P,Q$, the zero map $P \to Q$ is a homomorphism.
By the way, it is quite interesting for rings $R,S$ to study homomorphisms $U(R) \to U(S)$; these correspond to a decomposition $S \cong S_1 \times S_2$ and a homomorphism $R \to S_1$ (Hint: The image of $1$ is idempotent). See also the answers at MO/34332, especially the one by James Borger is very enlightening.