4

I would like to allow certain HTML elements in my comments and have edited kses.php directly in the past.

However, I have been hacked recently and replaced all the core Wordpress files and feel I would like to avoid editing those files.

Is it possible to allow more elements via the functions.php file?

1 Answer 1

3

Here is an example how to allow a commenter to insert HTML5 video into the comment. Both <video> and <source> elements has two allowed attributes. preprocess_comment filter is applied when saving the comment to the DB.

See /wp-includes/kses.php for $allowedtags array structure.

function myAllowHtmlComments($comment) {
    global $allowedtags; 
    $allowedtags['video'] = array(
        'width' => true,
        'height' => true
    );
    $allowedtags['source'] = array(
        'src' => true,
        'type' => true
    );
    return $comment;
}
add_filter('preprocess_comment','myAllowHtmlComments');
3
  • That looks great, thank you. I have added it to my functions.php but my internet connection is not working properly so I can't test it yet.
    – Phillip
    Commented Dec 25, 2012 at 12:20
  • Okay, I have tested it and it seems to work perfectly. Thank you very much.
    – Phillip
    Commented Dec 26, 2012 at 7:56
  • Phillip, if so, please accept the answer.
    – Max Yudin
    Commented Dec 26, 2012 at 9:19

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.