# hyperlink inside chapter / section title

I would like to have the possibility to have a hyperlink inside a chapter / section title.

MWE:

 \documentclass[twoside]{book}

\usepackage[pdftex,pagebackref=true]{hyperref}
\begin{document}
\chapter{documentation for link to Section 1}

\hypertarget{sec1}{}\section{Section 1 Reference}

\hypertarget{sec2}{}\section{Section 2 Reference}

\end{document}


This results in the following output:

We see in section 1.2 the hyperlink to section 1.1, but I want to have the link also in the chapter title. When adding a second chapter with a hyperlink (remove %% ) I get the error message:

Chapter 1.

Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding):
(hyperref)                removing \<let>-command' on input line 6.

Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding):
(hyperref)                removing \Hy@reserved@a' on input line 6.

Package hyperref Warning: Token not allowed in a PDF string (PDFDocEncoding):
(hyperref)                removing \@ifnextchar' on input line 6.

! Undefined control sequence.

?
! Emergency stop.

!  ==> Fatal error occurred, no output PDF file produced!


Question: How to get the hyperlink in the chapter (/section) title.

• \chapter{documentation for link to \protect\hyperlink{sec1}{Section 1}}? – moewe May 31 '18 at 11:49
• I'd probably go for \section{Section 1 Reference}\label{sec1} instead of \hypertarget{sec1}{}\section{Section 1 Reference}. Then one could write \chapter{documentation for link to \hyperref[sec1]{Section 1}} (i.e. no \protect) because \hyperref is robust. – moewe May 31 '18 at 11:53
• Thanks for both suggestions, I tried them both in a small program and looks like to work (I didn't doubt). In the original code there is already a \label. I have to see what the effect is on a larger project where the documentation is automatically generated, here the fix with \protect is, probably, easiest. Maybe you can make an answer of your suggestions. – albert May 31 '18 at 12:06

I would use \labels and then \hyperref[<label>]{<text>} for custom text or maybe even cleveref's \cref.

\documentclass[twoside]{book}

\usepackage[pdftex,pagebackref=true]{hyperref}
\begin{document}
\chapter{documentation for link to \hyperref[sec1]{Section 1}}

\section{Section 1 Reference}\label{sec1}

\section{Section 2 Reference}\label{sec2}
documentation for \hyperref[sec1]{Section 1}
\end{document}


If you want to stick to \hyperlink you need to \protect it because it is a fragile command.

\chapter{documentation for link to \protect\hyperlink{sec1}{Section 1}}


You didn't need to protect \hyperref` in the example above because it is a robust command. See What is the difference between Fragile and Robust commands? for an in-depth explanation of fragile vs. robust commands.