• 解決済 redcocker

    (@redcocker)


    お世話になります。

    コメントで使用できるタグの種類を増やしたいのですが、「/wp-includes/kses.php」を修正するのではなく、出来ればプラグイン上で処理したいのですが方法はありますでしょうか?

    ショートコードを使うことも今のところ考えておりません。

    宜しくお願い致します。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • こんにちは

    if ( ! defined( 'CUSTOM_TAGS' ) )
    	define( 'CUSTOM_TAGS', false );
    
    if ( ! CUSTOM_TAGS ) {
    	/**
    	 * Kses global for default allowable HTML tags.
    	 *
    	 * Can be override by using CUSTOM_TAGS constant.
    	 *
    	 * @global array $allowedposttags
    	 * @since 2.0.0
    	 */
    	$allowedposttags = array(...

    確認していませんが、
    CUSTOM_TAGSをtrueにして、テーマだったら、functions.phpや、プラグイン内で変数を定義(変数をこぴぺして、必要な分追加)は、できませんか?

    すみません
    プラグイン、これ使っています。忘れてました
    http://urbangiraffe.com/plugins/html-purified/

    トピック投稿者 redcocker

    (@redcocker)

    nobitaさん

    有難うございます。

    教えて頂いた方法とプラグイン、試してみます。

    トピック投稿者 redcocker

    (@redcocker)

    教えて頂いた方法をテストしましたが、

    define( 'CUSTOM_TAGS', true );

    とした時点で、

    Warning: in_array() [function.in-array]: Wrong datatype for second argument in /home/users/1/xxx/web/xxx/blog/wp-includes/kses.php on line 1116

    と言うワーニングが出て上手く行きませんでした。

    試行錯誤してみたところ、

    add_filter('comments_open','allow_tags_in_comments');
    add_filter('pre_comment_approved','allow_tags_in_comments');
    
    function allow_tags_in_comments($data) {
    	global $allowedtags;
    	$allowedtags['追加で許可するタグ'] = array('追加で許可する属性'=>array());
    	return $data;
    }

    で、上手く行きました。

    上記のコードは、プラグインに追加してテストしましたが、functions.phpに追加してもOKかと思います。

    単にタグと属性を許可するだけなら

    add_filter('preprocess_comment','allow_tags_in_comments');
    
    function allow_tags_in_comments($data) {
    	global $allowedtags;
    	$allowedtags['追加で許可するタグ'] = array('追加で許可する属性'=>array());
    	return $data;
    }

    でもOKですが、この場合、コメント欄の下に追加したタグは表示されません。

4件の返信を表示中 - 1 - 4件目 (全4件中)
  • トピック「コメントで使えるタグを追加したい」には新たに返信することはできません。