$\mathrm{Spec}(R)\!=\!\mathrm{Max}(R)\!\cup\!\{0\}$ $\Rightarrow$ $R$ is a PID Is the following true:

If $R$ is a commutative unital ring with
  $\mathrm{Spec}(R)\!=\!\mathrm{Max}(R)\!\cup\!\{0\}$, then $R$ is a PID.

If yes, how can one prove it?
Since $0$ is a prime ideal, $R$ is a domain. Thus we must prove that every ideal is principal. I'm not sure if this link (first answer) helps.

As mentioned, there are easy counterxamples. However, it is true for UFDs since PIDs are precisely the $\rm UFDs$ of dimension $\le 1,\:$ i.e. such that prime ideals $\ne 0$ are maximal. Below is a sketch of a proof of this and closely related results.
Theorem $\rm\ \ \ TFAE\ $ for a $\rm UFD\ D$ 
$(1)\ \ $ prime ideals are maximal if nonzero
$(2)\ \ $ prime ideals are principal
$(3)\ \ $ maximal ideals are principal
$(4)\ \ \rm\ gcd(a,b) = 1\ \Rightarrow\ (a,b) = 1$ 
$(5)\ \ $ $\rm D$ is Bezout
$(6)\ \ $ $\rm D$ is a $\rm PID$  
Proof $\ $ (sketch of $1 \Rightarrow 2 \Rightarrow 3 \Rightarrow 4 \Rightarrow 5 \Rightarrow 6 \Rightarrow 1$)
$(1\Rightarrow 2)$ $\rm\ \ P\supset (p)\ \Rightarrow\ P = (p)$ 
$(2\Rightarrow 3)$ $\ \: $ Clear.
$(3\Rightarrow 4)$ $\ \ \rm (a,b) \subsetneq P = (p)\ $ so $\rm\ (a,b) = 1$ 
$(4\Rightarrow 5)$ $\ \ \rm c = \gcd(a,b)\ \Rightarrow\ (a,b) = c\ (a/c,b/c) = (c)$ 
$(5\Rightarrow 6)$ $\ \ \rm 0 \ne I \subset D\:$ Bezout is generated by an elt with the least number of prime factors
$(6\Rightarrow 1)$ $\ \ \rm P \supset (p),\ a \not\in (p)\ \Rightarrow\ (a,p) = (1)\ \Rightarrow\ P = (p)$
