0
function myTidy($content) {
    $tidyConfig = array(
        'indent'                        => false, //don't indent
        'doctype'                       => 'omit', //don't include doctype
        'wrap'                          => 0, // don't line wrap
        'show-body-only'                => true, //don't include <html><head><title><body>
        'drop-proprietary-attributes'   => false, //this doesn't seem to be helping with our youtube stuff...
    );
    $tidy = tidy_parse_string($content, $tidyConfig, 'UTF8');
    $tidy->cleanRepair();
    return (string)$tidy;
}


echo myTidy('<span _my_custom_attr="asdfsdf">asdf</span>'), "\n";

Desired output

<span _my_custom_attr="asdfsdf">asdf</span>

Actual output:

<span>asdf</span>

What does it take to get tidy to allow my custom attribute?

Frank Farmer
  • 38,246
  • 12
  • 71
  • 89

2 Answers2

1

I think a leading underscore make the attibute invalid, so tidy will remove it, even if your tell him not to remove unknown attributes.

2ndkauboy
  • 9,302
  • 3
  • 31
  • 65
0

Turns out removing the leading underscore in the attribute name resolves the issue -- my_custom_attr works fine.

Frank Farmer
  • 38,246
  • 12
  • 71
  • 89