50

I'm using biblatex with the standard bibliography style. How or what should I modify so that the title is turned into a link pointing to a suitable doi url? (of course only if the doi is available)

Juan A. Navarro
  • 62,139
  • 32
  • 140
  • 169

1 Answers1

43

I used the default example bib from the current biblatex documentation which is available on every TeX distribution. The two entries have both a doi entry in the bib file:

\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage[backend=biber]{biblatex} 
\usepackage[colorlinks]{hyperref}
\bibliography{biblatex-examples}
\ExecuteBibliographyOptions{doi=false}
\newbibmacro{string+doi}[1]{%
  \iffieldundef{doi}{#1}{\href{http://dx.doi.org/\thefield{doi}}{#1}}}
\DeclareFieldFormat{title}{\usebibmacro{string+doi}{\mkbibemph{#1}}}
\DeclareFieldFormat[article]{title}{\usebibmacro{string+doi}{\mkbibquote{#1}}}
\begin{document}
A reference to~\cite{kastenholz} and~\cite{sigfridsson}. 
\printbibliography
\end{document}

With the latest biblatex update there is also a star version for \DeclareFieldFormat which refers to all entry types.

enter image description here

  • 1
    @Herbert, would it be possible to make the hyperlinks conditional? What I mean is, if both URL and DOI are available, use DOI, if only URL is available, use URL. Also, you mentioned that there must (should?) be a star version for \DeclareFieldFormat to capture all entry types. Do you know the command for that? – Jörg Mar 16 '12 at 14:28
  • 1
    I added a follow up question here: http://tex.stackexchange.com/questions/48400/biblatex-make-title-hyperlink-to-dois-url-or-isbn – Jörg Mar 17 '12 at 20:11