如何在WordPress帖子中自动剥离超链接和图像

时间:2013-05-01 作者:Zen Nguyễn

我使用在前端为wordpress成员创建了一个帖子表单DJD Site Post 插件。插件url:http://wordpress.org/extend/plugins/djd-site-post/

现在我想自动剥离所有超链接(&A);用户复制时发布的图像(&P);粘贴其他网站的内容(有许多链接)。

我使用插件中的简单编辑器(tinymce编辑器)。

如何自动剥离所有超链接(&A);在将图像记录到数据库之前(或当用户单击“提交”按钮时),通过php functionstinymce functions (排除管理员用户)?

下面是我认为需要编辑的插件中的一些代码:(我正在使用casesimple)

// Set editor (content field) style
switch($djd_options[\'djd-editor-style\']){
    case \'simple\':
        $teeny = true;
        $show_quicktags = false;
        add_filter( \'teeny_mce_buttons\', create_function ( \'\' , "return array(\'bold\', \'italic\', \'underline\', \'strikethrough\', \'bullist\', \'numlist\', \'justifyleft\', \'justifycenter\', \'justifyright\', \'undo\', \'redo\', \'unlink\', \'fullscreen\');" ) , 50 );
        break;
    case \'rich\':
        $teeny = false;
        $show_quicktags = true;
        break;
    case \'html\':
        $teeny = true;
        $show_quicktags = true;
        add_filter ( \'user_can_richedit\' , create_function ( \'\' , \'return false;\' ) , 50 );
        break;
}
谢谢大家的帮助。(如果我的英语不好,很抱歉。)

1 个回复
SO网友:birgire

下面是一个从帖子内容(保存之前)中删除链接和图像标记的方法edit_post_content 过滤器和wp_kses 功能:

add_filter( \'edit_post_content\', \'my_edit_post_content\', 10, 1 );
function my_edit_post_content( $content ) { 
    if (!current_user_can(\'manage_options\')) { // only strip for non-admins
        global $allowedposttags;
        $mytags = $allowedposttags;
        unset($mytags[\'a\']);               // don\'t allow links
        unset($mytags[\'img\']);             // don\'t allow images
        $content = wp_kses($content, $mytags);
    }
    return $content;
}
在哪里$allowedposttags 定义如下:

http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/kses.php#L48

结束

相关推荐

Next/Prev posts on same page

WordPress用户您好,我在建立wordpress网站时遇到了一个问题,我不知道该怎么办。目前,我正在“新闻”页面上显示2篇来自“新闻”类别的帖子。在这个页面的底部,我想要一个上一页/下一页按钮,显示同一类别的下一篇或前两篇文章。所以我在想我该怎么做。所以我找到了这个代码:previous_posts_link(\'Newer Entries »\') next_posts_link(\'« Older Entries\'); 这显示了一个我所期望的链接。但两个链接都不起作用(页面重