Change the order of the address and publisher in Biblatex

Insert this after loading biblatex:

% let "publisher" and "location" change place
\renewbibmacro*{publisher+location+date}{%
  \printlist{publisher}%
  \iflistundef{location}
    {\setunit*{\addcomma\space}}
    {\setunit*{\addcolon\space}}%
  \printlist{location}%
  \setunit*{\addcomma\space}%
  \usebibmacro{date}%
  \newunit}

This is from standard.bbx in Biblatex, with only those two interchanged.

If only books should be affected, a straightforward method is to not change the macro as above, but instead define a new one, \newbibmacro{location+publisher+date} with the definition as above. And then you copy the whole \DeclareBibliographyDriver{book} part from standard.bbx into your file, but exchange the \usebibmacro call to use the alternative macro instead.


We can use \ifentrytype{book} to change the macro only for @books.

\renewbibmacro*{publisher+location+date}{%
  \ifentrytype{book}
    {\printlist{publisher}%
     \iflistundef{location}
       {\setunit*{\addcomma\space}}
       {\setunit*{\addcolon\space}}%
     \printlist{location}}
    {\printlist{location}%
     \iflistundef{publisher}
      {\setunit*{\addcomma\space}}
      {\setunit*{\addcolon\space}}%
     \printlist{publisher}}
  \setunit*{\addcomma\space}%
  \usebibmacro{date}%
  \newunit}

MWE

\documentclass{article}
\usepackage[style=numeric, firstinits=true, maxbibnames=99, minbibnames=1, backend=biber]{biblatex}

\renewbibmacro*{publisher+location+date}{%
  \ifentrytype{book}
    {\printlist{publisher}%
     \iflistundef{location}
       {\setunit*{\addcomma\space}}
       {\setunit*{\addcolon\space}}%
     \printlist{location}}
    {\printlist{location}%
     \iflistundef{publisher}
      {\setunit*{\addcomma\space}}
      {\setunit*{\addcolon\space}}%
     \printlist{publisher}}
  \setunit*{\addcomma\space}%
  \usebibmacro{date}%
  \newunit}

\bibliography{biblatex-examples.bib}

\begin{document}
  \cite{cicero,wilde}

  \printbibliography
\end{document}

enter image description here

Tags:

Biblatex