Prevent WYSIWYG+CKEditor from stripping html classes
I found a solution.

This turns off the filtering, it's working, but not a good idea...

config.allowedContent = true;


To play with a content string works fine for id, etc, but not for the class and style attributes, because you have () and {} for class and style filtering.

So my bet is for allowing any class in the editor is:

config.extraAllowedContent = '*(*)';


This allows any class and any inline style.

config.extraAllowedContent = '*(*);*{*}';


To allow only class="asdf1" and  class="asdf2" for any tag:

config.extraAllowedContent = '*(asdf1,asdf2)';


(so you have to specify the classnames)

To allow only class="asdf" only for p tag:

config.extraAllowedContent = 'p(asdf)';


To allow id attribute for any tag:

config.extraAllowedContent = '*[id]';


etc etc

To allow style tag (&lt;style type="text/css"&gt;...&lt;/style&gt;):

config.extraAllowedContent = 'style';


To be a bit more complex:

config.extraAllowedContent = 'span;ul;li;table;td;style;*[id];*(*);*{*}';


Hope it's a better solution...