Why is Zellner's g prior "unacceptable"? I know Zellner's prior is using data in order to set prior information, but actually the whole model depends on the data. Is there any other reason? 
 A: In our book, Bayesian Essentials with R, we state almost the same thing:

Zellner's prior somehow appears as a data-dependent prior through its
  dependence on $X$, but this is not really a problem since the whole
  model is conditional on $X$.

Zellner's prior writes down as
$$
\beta|\sigma \sim \mathscr{N}_p\left(\tilde\beta,g\sigma^2(X^\text{T}X)^{-1}\right)\qquad \sigma\sim\pi(\sigma)=1/\sigma
$$
and its major inconvenient is the dependence on the constant $g$, that impacts in a significant manner the resulting inference. This is illustrated in the book. A way out of this problem is to associate $g$ with a prior distribution, as detailed in Bayesian Essentials with R. A more expedite way out is settle for $g=n$. 
A second issue with the Zellner prior is that this is an improper prior (because of $\sigma$) hence faces difficulties for model comparison as in variable selection. A somewhat dirty trick bypasses this difficulty: again quoting from the book:

we are compelled to denote by $\sigma^2$ and $\alpha$ the variance and
  intercept terms common to all models, respectively. Although this is
  more of a mathematical trick than a true modeling reason, the prior
  independence of $(\alpha; \sigma2)$ and the model index allows for the
  simultaneous use of Bayes factors and an improper prior on those
  nuisance parameters.

Therefore, it does not seem right to call Zellner's inacceptable. In my opinion, the only inacceptable priors are those that conflict with prior information. In a non-informative situation, any prior should be acceptable, at least a priori. (It may be that the data reveals a conflict between the prior and the parameter that could have been behind the data.)
