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)
1 Answer
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.
-
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örgMar 16, 2012 at 14:28 -
1I added a follow up question here: tex.stackexchange.com/questions/48400/…– JörgMar 17, 2012 at 20:11