Solving the functional equation $f(xy)=f(f(x)+f(y))$
Solution 1:
$$f( 0 ) = f( f(x) + f(0) )$$ Thus in particular, $f(2f(0))=f(0)$. Then let $y=2f(0)$ in the original equality, we get $$f( x \cdot 2f(0) ) = f( f(x) + f(2f(0)) ) = f( f(x) + f(0) ) = f(0)$$ If $f(0)$ is not equal to $0$, we're done.
Now assume $f(0) = 0$, and from above one obtains $f( f(x) ) = 0$. Let $y = f(1)$, leads $$f( x \cdot f(1) ) = f( f(x) + f( f(1) ) ) = f( f(x) ) = 0$$ If $f(1)$ is not equal to $0$, we're done.
While if $f(1) = 0$, then let $y=1$, and $f(x)=f( f(x) ) = 0$. Thus the only solution is constant.
Solution 2:
Injective case only: As suggested by you and in the comments, we use $\{x,y\}=\{0,1\}$:
$y=0$:
$$f(0)=f\big(f(x)+f(0)\big)$$
$x=y=0$:
$$f(0)=f\big(2f(0)\big)$$
so we see: $(1)=(2)$ -> $$f\big(f(x)+f(0)\big)=f\big(2f(0)\big)\\ f(x)+f(0)=2f(0)\\ f(x)=f(0)=c $$
We test what $c$ can be: $f(xy)= c = f(2c) = c$ which is true $\forall c \in \mathbb{R}$
So the only solution: $f(x)=c$ with $c \in \mathbb{R}$, (and could easily be generalized to the complex domain $f: \mathbb{C} \to \mathbb{C}$, with $c \in \mathbb{C}$).