当前位置:网站首页 > 教程 > dedecms教程 > 织梦DEDECMS自动清除文章内段落标签的调用方法

织梦DEDECMS自动清除文章内段落标签的调用方法

蓝色枫叶 蓝色枫叶 2020-05-20 前往当前专题: dedecms教程

织梦DEDECMS自动清除文章内段落p标签样式而保留p标签的方法

今天在发布文章时发现,从别处复制过来的文字,自带的样式,特别是采集过来的内容,因为采集时没有做好标签的过滤,导致内容在我们网站上出现网页结构错乱,如下图

织梦DEDECMS自动清除文章内段落标签的调用方法 请求出错,状态码:0内容: 教程 织梦 dedecms教程  第1张

如果放在编辑器里清除样式后,又全部变成<br/>,如下图

织梦DEDECMS自动清除文章内段落标签的调用方法 请求出错,状态码:0内容: 教程 织梦 dedecms教程  第2张

这样,我文章内容里面的段落P标签的样式就失效了,所以我想让它保留P标签,在群里大神给了一个治标不治本的方法,那就是在内容页调用代码自动过滤,

过滤代码为:

{dede:field.body runphp=yes}
@me = preg_replace('/<p.*?style=".*?"/', '<p',@me);
{/dede:field.body}

如果想把整个<div>都过滤掉,可以这样写:

{dede:field.body runphp=yes}
            @me = preg_replace('/<div([^>]*)>/i', '',@me);
            @me = preg_replace('/<\/div>/i', '',@me);
            {/dede:field.body}

把内容页的正文调用标签{dede:field.body/}替换成上面的代码。这样前台显示的就是正常的,

织梦DEDECMS自动清除文章内段落标签的调用方法 请求出错,状态码:0内容: 教程 织梦 dedecms教程  第3张

后台编辑框里面这些样式都还是存在的。

目前只能这样,等以后遇到解决方法再更新。

蓝色枫叶

蓝色枫叶

TA很懒,啥都没写...

Copyright 蓝色枫叶 www.lansefengye Rights Reserved.