It's not necessarily true that $f(1)=1$: the function $f(x)=0$ satisfies both functional equations. However, setting $x=y=1$ in $f(xy)=f(x)f(y)$, we get $f(1)=f(1)^2$, so $f(1)=0$ or $f(1)=1$.
Next, $f(n)=nf(1)$ for all $n\in\mathbb{N}$ since $f(x+y)=f(x)+f(y)$, and similarly
$$ 0=f(n-n)=f(n)+f(-n) $$
so $f(-n)=-f(n)=(-n)f(1)$ for all $n\in\mathbb{N}$. And if $r=\frac{m}{n}\in\mathbb{Q}$ with $n>0$, then
$$ nf(r)=f(m)=mf(1)$$
so we see that $f(r)=rf(1)$. So either $f=0$ on $\mathbb{Q}$, or $f(r)=r$ for all $r\in\mathbb{Q}$.
Finally, since $f(x^2)=f(x)^2$ and every non-negative real number is a square, it follows that $f$ maps non-negative real numbers to non-negative real numbers. Therefore if $x\leq y$ then $f(x)\leq f(y)$.
So given any $x\in\mathbb{R}$, choose $r,s\in\mathbb{Q}$ with $r<x<s$, then $f(r)\leq f(x)\leq f(s)$. Therefore if $f(1)=0$ then $f$ is identically zero.
If however $f(1)=1$, then we have $r<x<s$ and $r=f(r)\leq f(x)\leq f(s)=s$, so choosing $s-r$ arbitrarily small shows that $f(x)=x$.