[Tex/LaTex] Remove title in biblatex references

biblatex

I want to cite articles as full reference, but only in the text. So far, everything works in the MWE below, but there is still the title of the article which I want to suppress.

One way I found to do this was by adding \DeclareFieldFormat[article]{title}{}; but that cancels the title and leaves two commas (,,) where the title has been.

Another suggestion was to use \AtEveryBibitem{\clearlist{title}}, but that doesn't seem to work at all.

Does anyone know how to get rid of the title? Such that the citations become

I want to cite Author et al. (2050), Journal A, 50, 63–90 as well as Author (2013), Journal B, 50, 63–90

Here is a minimum working example:

\documentclass{scrartcl}

%%%%%%%%%%%%%%%%%%%%%%% THE REFERENCES %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
@article{entry1,
  author =   {Author, A. and Buthor, B. and Cusor, C.},
  title =    {Title A},   
  journal =      {Journal A},   
  volume =       {50},
  year =       {2050},
  pages =    {63--90},
}
@article{entry2,
  author =   {Author, A.},
  title =    {Title of Article B},
  journal =      {Journal B},   
  volume =       {50},
  year =       {2013},
  pages =    {63--90},
}
\end{filecontents}

%%%%%%%%%%%%%%%%%%%%%%%%%%%%% BIBLIOGRAPHY STYLE %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\usepackage[style=authoryear,maxnames=1,backend=bibtex,doi=false,isbn=false,url=false]{biblatex}
\addbibresource{\jobname.bib}

\DeclareFieldFormat[article]{volume}{\mkbibbold{#1}}
\DeclareFieldFormat[article]{number}{\mkbibparens{#1}}
\DeclareFieldFormat{journaltitle}{\mkbibemph{#1},} % italic journal title 
\DeclareFieldFormat{pages}{#1}
%\DeclareFieldFormat[article]{title}{} % remove title
\renewbibmacro{in:}{} % remove "in"
\renewcommand{\mkbibnamefirst}[1]{} % remove first name
\renewcommand{\newunitpunct}{, }

%%%%%%%%%%%%%%%%%%%%%%%%%%%%% BEGIN THE DOCUMENT %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

\begin{document}
I want to cite
\fullcite{entry1}
as well as
\fullcite{entry2}


\end{document}

Best Answer

One should not suppress fields with \DeclareFieldFormat{title}{}, since biblatex could still think it printed the title, even though it really did not do that. This can result in superfluous and spurious spaces and punctuation - although there are measures to prevent this. Indeed the tactics of using \DeclareFieldFormat{<field>}{} to suppress a field seems to work without issues in many circumstances, but only because biblatex works frantically in the background cleaning up unwanted double punctuation. In the MWE this was not really possible because of \renewcommand{\newunitpunct}{, } (\renewcommand{\newunitpunct}{\addcomma\space} would have worked).

If you want to get rid of the title information in a citation, go with

\AtEveryCitekey{\clearfield{title}}

to delete the information in the bibliography, it is

\AtEveryBibitem{\clearfield{title}}

There are more radical solutions to remove the title in a way that it gets never passed to biblatex in the first place with

\DeclareSourcemap{
  \maps[datatype=bibtex]{
    \map{
      \step[fieldset=title, null]
    }
  }
}

or in a way that suppresses the title when it is read from the .bbl with

\DeclareFieldInputHandler{title}{\def\NewValue{}}

If you don't want to use the title in your document at all, the radical solutions are slightly more elegant.

Similarly, \renewcommand{\mkbibnamefirst}[1]{} is not the best idea to suppress first names, you might try

\DeclareNameFormat{first-last}{%
  \usebibmacro{name:last}{#1}{#3}{#5}{#7}%
  \usebibma‌​cro{name:andother‌​s}}

here (see also Biblatex: Last name only in \footcite for other solutions).