# Displaying a book or thesis's number of pages in biblatex differently

Is there a way to format the output of biblatex's citations to a book in a different way? When you cite a paper, the pages usually refer to the page range of the paper in the proceedings or journal, but in the case of a book, most sources just give the number of pages of the book.

Take for example the following bibliography, fictivebook.bib :

@book{fictivebook2012,
author = "John Smith and Bobby Fisher and Ron Jeremy and Martha Stewart and Barrack Obama",
title = "Super awesome book",
year = "2012",
pages = "9001"}


Cited in the following document :

\documentclass{article}

\usepackage[backend=biber,style=numeric]{biblatex}
\bibliography{fictivebook}

\begin{document}

This citation is useless, we only want a bibliography \cite{fictivebook2012}.

\printbibliography

\end{document}


The citation gets rendered as :

[1] John Smith et al. Super awesome book. 2012, p. 9001.


Which is a bit ambiguous. I mean, does it mean that I am citing only page 9001 of the Super awesome book, or does it mean that this is the work of someone which only corresponds to the 9001th page of this book?

I would prefer an output like this, is there any way to achieve that?

[1] John Smith et al. Super awesome book. 2012, 9001 pages.


I tried editing the .bib file, putting 9001 pages in the pages field to no avail. So far, the best solution I have would be to just remove the number of pages for books/theses, and thus removing the confusion.

-

Use the pagetotal instead of the pages field.

\documentclass{article}

\usepackage{biblatex}

% Keep abbreviations in general, but use "pages" to format the pagetotal field
\DeclareFieldFormat{pagetotal}{\mkpagetotal[bookpagination]{#1~pages}}

\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{fictivebook2012,
author = "John Smith and Bobby Fisher and Ron Jeremy and Martha Stewart and Barrack Obama",
title = "Super awesome book",
year = "2012",
pagetotal = "9001",
}
\end{filecontents}