preprocess_comment フィルターでコメントをパースして、do_shortcode() かまして、add_shortcode() で登録したコールバックで渡されるアトリビュートがきちんとパースされてない。
試しに通常の記事にそのショートコード埋め込んだらきちんとパースされてる。
例えば [test tags="aaa, bbb, ccc" categoris="wp"] とか渡すと、記事からコールバックされる場合、array( 'tags' => 'aaa, bbb, ccc', 'categories' => 'wp' ) とくるが、preproces_comment フィルター内でやると、array( 'tags="aaa, bbb, ccc"' ), 'categories="wp"' ), という感じでヌーメリック配列で渡される。
shortcode_parse_atts() がうまく働いていない感じ。
Postscripts
対象のテキストをログで見たら、
[test tags=\"aaa,bbb\"]みたいにクォーテーションマークにエスケープ処理されとる。pre_comment_contentフィルターにずらして少し遅らせても同じ。wp_insert_comment()でwp_unslash()してる。これ、先に同じ処理してもかまわないのかな。多分、大丈夫だとは思うが。
