[Tex/LaTex] hyperlink jumps to the wrong section of appendices

appendiceshyperreftable of contents

I am using appendix package to create appendices but also customize them with etoolbox commands. The TOC page number refers to the correct page of appendices sections but the hyperlink jumps to the wrong place.

\documentclass[11pt,a4paper,oneside]{book}

\usepackage[x11names]{xcolor}
\usepackage{caption}
\usepackage{etoolbox}
\usepackage{graphicx}
\usepackage{hyperref}
\hypersetup{linkcolor=DodgerBlue3, colorlinks=true}
\usepackage{tocloft}
\usepackage{appendix}

    % customizing appendices

        % renew the tags of figures, tables and equations
        \newcounter{appendix}
        \AtBeginEnvironment{appendices}{\renewcommand{\thefigure}{\Alph{appendix}.\arabic{figure}.}}
        \AtBeginEnvironment{appendices}{\renewcommand{\thetable}{\Alph{appendix}.\arabic{table}.}}
        \AtBeginEnvironment{appendices}{\renewcommand{\theequation}{\Alph{appendix}.\arabic{equation}}}
        \AtBeginEnvironment{appendices}{\renewcommand{\chaptername}{APPENDIX}}
        \AtBeginEnvironment{appendices}{\renewcommand{\thesection}{\arabic{appendix}.\arabic{section}.}}

        % Define new way to add appendices to the TOC
        \newcommand{\appendixtitle}{}
        \newcommand{\appendixtitleFull}{\chaptername\space\Alph{appendix}.\space\appendixtitle}
        \AtBeginEnvironment{appendices}{
            \preto{\chapter}{
                \clearpage
                \addtocounter{appendix}{1}
                \setcounter{section}{0}
                \setcounter{figure}{0}
                \setcounter{equation}{0}
                \phantomsection \addcontentsline{toc}{chapter}{\appendixtitleFull}
                        }
                                    }


\newcommand{\sampleEquationFloats}{

\begin{figure}
    \includegraphics[]{example-image-a}
    \caption{Figure Caption}
\end{figure}

\begin{equation}
    E = m c^{2}
\end{equation}

\begin{table}
    \caption{Table Caption}
    \centering
    \begin{tabular}{|c |c|}
        \hline
        Column & Column
        \\
        \hline
    \end{tabular}
\end{table}

}



\begin{document}

\tableofcontents

\begin{appendices}

    \renewcommand{\appendixtitle}{My Title}
    \chapter*{\appendixtitleFull}

        \sampleEquationFloats

        \section{One Section}

        \section{Another Section}

    \renewcommand{\appendixtitle}{My Title}
    \chapter*{\appendixtitleFull}

        \sampleEquationFloats

        \section{One Section}

        \section{Another Section}

    \renewcommand{\appendixtitle}{My Title}
    \chapter*{\appendixtitleFull}

        \sampleEquationFloats

        \section{One Section}

        \section{Another Section}

\end{appendices}

\end{document} 

Best Answer

There is a solution here TOC Links to Chapters of Parts lead to Chapters of previous Parts . Using a similar approach, we redefine \theHsection and \theHsubsection as follows

\renewcommand*{\theHsection}{\thesection}
\renewcommand*{\theHsubsection}{\thesubsection}

The full code

\documentclass[11pt,a4paper,oneside]{book}

\usepackage[x11names]{xcolor}
\usepackage{caption}
\usepackage{etoolbox}
\usepackage{graphicx}
\usepackage{hyperref}
\hypersetup{linkcolor=DodgerBlue3, colorlinks=true}
\usepackage{tocloft}
\usepackage{appendix}

    % customizing appendices

        % rennew the tags of figures, tables and equations
        \AtBeginEnvironment{appendices}{\renewcommand{\thefigure}{\Alph{appendix}.\arabic{figure}.}}
        \AtBeginEnvironment{appendices}{\renewcommand{\thetable}{\Alph{appendix}.\arabic{table}.}}
        \AtBeginEnvironment{appendices}{\renewcommand{\theequation}{\Alph{appendix}.\arabic{equation}}}
        \AtBeginEnvironment{appendices}{\renewcommand{\chaptername}{APPENDIX}}
        \AtBeginEnvironment{appendices}{\renewcommand{\thesection}{\arabic{appendix}.\arabic{section}.}}

        % Define new way to add appendices to the TOC
        \newcounter{appendix}
        \newcommand{\appendixtitle}{}
        \newcommand{\appendixtitleFull}{\chaptername\space\Alph{appendix}.\space\appendixtitle}
        \AtBeginEnvironment{appendices}{
            \preto{\chapter}{
                % Clear the page (to guarantee referring to the correct page)
                \clearpage
                % Add to appendix counter
                \addtocounter{appendix}{1}
                % Redefine hyperlinks for sections and subsections
                \renewcommand*{\theHsection}{\thesection}
                \renewcommand*{\theHsubsection}{\thesubsection}
                % Reset counters
                \setcounter{section}{0}
                \setcounter{subsection}{0}
                \setcounter{figure}{0}
                \setcounter{table}{0}
                \setcounter{equation}{0}
                % Insert an appendix entry in the TOC
                \phantomsection \addcontentsline{toc}{chapter}{\appendixtitleFull}
                        }
                                    }


\newcommand{\sampleEquationFloats}{

\begin{figure}
    \includegraphics[]{example-image-a}
    \caption{Figure Caption}
\end{figure}

\begin{equation}
    E = m c^{2}
\end{equation}

\begin{table}
    \caption{Table Caption}
    \centering
    \begin{tabular}{|c |c|}
        \hline
        Column & Column
        \\
        \hline
    \end{tabular}
\end{table}

}



\begin{document}

\tableofcontents

\begin{appendices}

    \renewcommand{\appendixtitle}{My Title}
    \chapter*{\appendixtitleFull}

        \sampleEquationFloats

        \section{One Section}

        \section{Another Section}

    \renewcommand{\appendixtitle}{My Title}
    \chapter*{\appendixtitleFull}

        \sampleEquationFloats

        \section{One Section}

        \section{Another Section}

    \renewcommand{\appendixtitle}{My Title}
    \chapter*{\appendixtitleFull}

        \sampleEquationFloats

        \section{One Section}

        \section{Another Section}

\end{appendices}

\end{document}