Some observations:
If there exists a number $x_0$ such as $\lfloor x_0 \rfloor \ne 0$ and $f(x_0)\ne 0$, we can write any number $z=\lfloor x_0 \rfloor y$ for some $y$. Now we get that $f(z)=f(\lfloor x_0 \rfloor y)=f(x_0)\lfloor f(y) \rfloor$. Since $\lfloor f(y) \rfloor$ is always an integer regardless of $y$, that means that all values of $f$ are integer multiples of some number $q=f(x_0)$. Assume that $f$ takes at least two nonzero different values $n_1q$ and $n_2q$, let $f(z_1)=n_1q$ and $f(z_2)=n_2q$, where $|n_1|<|n_2|$ and $z_i$ lie outside of $[0, 1)$. Now we get $z_1=\lfloor z_2 \rfloor y$ for some y and write $n_1q = f(z_1) = f(\lfloor z_2 \rfloor y)=f(z_2)\lfloor f(y)\rfloor=n_2 q \lfloor f(y) \rfloor$, or $\lfloor f(y) \rfloor = \frac{n_1}{n_2}$. But the left side is an integer but the right is not (since $|n_1|<|n_2|$, so $0<|\frac{n_1}{n_2}|<1$).
So, we conclude that $f$ can take at most one nonzero value outside of $[0, 1)$. And if $x$ lies in $[0, 1)$, we have $\lfloor x \rfloor = 0$ and $f(0\cdot y)=f(x)\lfloor f(y) \rfloor$, or $\frac{f(0)}{f(x)}=\lfloor f(y) \rfloor$ for any $y$. That means that if exists such $0\leqslant x<1$ and $f(x)\ne 0$, then $f(x)$ must be constant outside of $[0, 1)$ (see above).
Update (next part)
If $f(x)$ is constant outside of $[0, 1)$, then necessary $\lfloor f(x) \rfloor = 1$ (for example, that's because $f(4)=f(2)$, but $f(4)=f(2\cdot 2)=f(2) \lfloor f(2) \rfloor$. Since a number $0\leqslant z<1$ can be written as $-1(-z)$, we have $f(z)=f(-1)\lfloor f(-z)\rfloor$, so $f$ must be constant on all $\mathbb{R}$ (because both $-1$ and $-z$ lie outside of $[0, 1)$.
On the other hand, let's assume that $f(x)=0$ for any $x$ in $[0,1)$. So, for any number $z$ we can pick an integer $n$ such as $0\leqslant y=\frac z n < 1$. So we get $f(z)=f(n\cdot y)=f(n) \lfloor f(y) \rfloor$. Since $f(y)$ is $0$, so is $f(z)$. So, $f$ is constant zero function.
Final answer:
The only solutions are constant functions $f(x)=c$, where either $c=0$ or $1\leqslant c <2$ (i.e. $\lfloor c\rfloor =1$).