将未修改的文本内容存储在数据库中

时间:2015-02-16 作者:nonsensation

我想用纯文本写我的帖子(以及其他用户的评论),然后让降价引擎在上面运行。但是,编辑器似乎会转换文本,并在保存时替换一些字符等。。

是否有方法存储和检索用户在数据库中输入的纯文本,并将其原封不动地返回以供进一步手动编辑?

我已经禁用了可视化编辑器。也许WP在这上面运行了一些钩子,我必须禁用它们?

我在函数中使用它。php现在:

/* * * [Markdown] * * */
$bada_md_path = get_template_directory() . \'/ext/Markdown/Michelf/\';

require_once( $bada_md_path . \'MarkdownExtra.inc.php\' );

use Michelf\\MarkdownExtra;

function bada_md_content( $content )
{
    $content = Michelf\\MarkdownExtra::defaultTransform( $content );

    return \'###</br>\' . $content . \'</br>###\';
}

add_filter( \'comment_text\' , \'bada_md_content\' );
add_filter( \'the_content\' , \'bada_md_content\' );

1 个回复
最合适的回答,由SO网友:cristian.raiber 整理而成

您可以参考以下内容:

function my_formatter($content) {
       $new_content = \'\';
       $pattern_full = \'{(\\[raw\\].*?\\[/raw\\])}is\';
       $pattern_contents = \'{\\[raw\\](.*?)\\[/raw\\]}is\';
       $pieces = preg_split($pattern_full, $content, -1, PREG_SPLIT_DELIM_CAPTURE);

       foreach ($pieces as $piece) {
               if (preg_match($pattern_contents, $piece, $matches)) {
                       $new_content .= $matches[1];
               } else {
                       $new_content .= wptexturize(wpautop($piece));
               }
       }


       return $new_content;
}

remove_filter(\'the_content\', \'wpautop\');
remove_filter(\'the_content\', \'wptexturize\');

add_filter(\'the_content\', \'my_formatter\', 99);
基本上,它改变了现有的[原始]短代码,并通过将您的内容包装在这个短代码中,WordPressshould 不要再弄乱你的代码:)

希望这有帮助。

结束

相关推荐

让getText与条件语句一起使用时出现问题

我一直想申请gettext 筛选以针对不同的产品类别返回两个不同的结果(或读取为帖子的类别,非woocommerce特定)。我似乎做不好。这将加载但实际上不应用条件,它始终默认为else条件。我错过了什么?这将添加到my child主题的函数中。php。function my_text_strings( $translated_text, $text, $domain ) { switch ( $translated_text ) {