I am struggling with the translations of my theme. I use the function
get_permalink_date of my class. The relevant snippet is:
$permalink_title = sprintf( /* translators: 1 = Post Title, 2 = Author Name */ esc_html_x( '%1$s by %2$s', 'permalink title', 'themeberger' ), __( 'A post', 'themeberger' ), get_the_author_meta( 'display_name', $this->post->post_author ) );
What I don’t understand is that the translation from
__(); works, but
esc_html_x(); does not. I hope that someone can help me.
The relevant part from the .po file is:
#. translators: %1$s: Post Title. %2$s: Author Name. #: themeberger/class-themeberger-post-functions.php:237 msgid "%1$s by %2$s" msgstr "%1$s von %2$s" #: themeberger/class-themeberger-post-functions.php:238 msgid "A post" msgstr "Ein Beitrag"
The output is
<a href="[...]" title="Ein Beitrag by Christian Hockenberger">[...]</a>
I really don’t get it. In another line also
_x( '%s ago', '%s = human-readable time difference', 'themeberger' ) is not working. I first thought that for some reason the translations are not transferred to the class, but
What can I do?