I'm setting up a way to feed the title of a WP post as the title argument for a reddit button. It works fine unless there is an encoded character in the string:

apostrophe’s break things.

...Which results in reddit double encoding the ampersand:

apostrophe’s break things.

I've tried the functions the_title_attribute(), the_title(), html_entity_decode(), and htmlspecialchars_decode() all to no avail - certain encodings remain.

Anyone know a way around this? Like a way to get the raw unencoded title from the database?


1 Answer 1


Try this:

$title = get_post_field('post_title', $post_id, 'raw');

However I'd get to the bottom of what encoding reddit code would prefer. Echoing raw stuff is poor idea for security.

  • This is exactly what I was looking for and worked perfectly. Thanks. Can you elaborate on how echoing raw stuff is a poor idea for security?
    – Jartron
    Oct 19, 2011 at 0:24
  • @Jartron it is general security concept that any output should be properly cleaned in a way appropriate to output context. See Data Validation > Output Sanitation in Codex.
    – Rarst
    Oct 19, 2011 at 9:02

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.