- 積分
- 131
- 金幣
- 5 個(gè)
- 社區(qū)幣
- 0 元
漸入佳境
- 貢獻(xiàn)
- 0 點(diǎn)
- 金幣
- 5 個(gè)
|
用AI弄的,不懂代碼,弄了好幾天
- <?php
- if (!defined('IN_DISCUZ')) {
- exit('Access Denied');
- }
- class plugin_identifier {
- function discuzcode($value) {
- global $_G;
- if ($value['caller'] == 'discuzcode' && isset($_G['discuzcodemessage'])) {
- // 獲取要處理的內(nèi)容
- $thread_message = $_G['discuzcodemessage'];
- // 第一步:移除所有的 <br> 標(biāo)簽
- $thread_message = preg_replace('/<br\s*\/?>/', '', $thread_message); // 先把 <br> 標(biāo)簽移除
- // 第二步:將所有換行符替換為統(tǒng)一的段落分隔符 <p></p>
- $thread_message = preg_replace('/\n+/', '</p><p>', $thread_message);
- // 第三步:確保每個(gè)段落都包裹在 <p></p> 標(biāo)簽中
- $thread_message = '<p>' . $thread_message . '</p>';
- // 第四步:移除每個(gè) <p> 標(biāo)簽中如果僅有 <br> 標(biāo)簽的情況
- $thread_message = preg_replace('/<p>\s*<br\s*\/?>\s*<\/p>/', '', $thread_message); // 如果 <p> 標(biāo)簽中只有 <br> 標(biāo)簽,去除空段落
- // 第五步:移除段落內(nèi)多余的空白或 <br> 標(biāo)簽
- $thread_message = preg_replace('/<p>\s*(<br\s*\/?>\s*)*<\/p>/', '<p></p>', $thread_message); // 如果段落內(nèi)有多余的 <br> 標(biāo)簽,替換為空段落
- // 最后:處理去掉所有的多余換行符
- $thread_message = preg_replace('/\s+/', '', $thread_message); // 移除多余空格或換行符
- //如果要強(qiáng)行將所有空行刪除,取消注釋下面這行
- //$thread_message = preg_replace('/<p>\s*<\/p>/', '', $thread_message); //除多余的空 <p></p> 標(biāo)簽
- // 最終存儲(chǔ)處理后的內(nèi)容
- $_G['discuzcodemessage'] = $thread_message;
- }
- }
- }
- ?>
復(fù)制代碼 將里面的
- if ($value['caller'] == 'discuzcode' && isset($_G['discuzcodemessage'])) {
復(fù)制代碼 這段放到你的腳本里面,插件根目錄xxx.class.php這個(gè),每次換行都會(huì)加一個(gè)p標(biāo)簽,需要自行給P標(biāo)簽添加樣式,比如.t_fsz p {margin: 16px 0; line-height: 26px;}這個(gè)需要自行修改測(cè)試,plugin_identifier是插件標(biāo)識(shí)哈。
QQ20250207-175927.png (45.09 KB, 下載次數(shù): 3)
下載附件
2025-2-7 17:59 上傳
如果要強(qiáng)制將帖子里所有的空行移除的話。
- //如果要強(qiáng)行將所有空行刪除,取消注釋下面這行
- //$thread_message = preg_replace('/<p>\s*<\/p>/', '', $thread_message); //除多余的空 <p></p> 標(biāo)簽
復(fù)制代碼 將這段取消注釋
QQ20250207-180047.png (30.62 KB, 下載次數(shù): 2)
下載附件
2025-2-7 18:00 上傳
都5025年了,這種低級(jí)問(wèn)題該改嘍。
|
|