Discuz! 官方交流社區(qū)
標(biāo)題: Discuz 手動(dòng)添加 markdown 代碼支持教程! [打印本頁]
作者: lovetvb 時(shí)間: 2023-3-29 10:56
標(biāo)題: Discuz 手動(dòng)添加 markdown 代碼支持教程!
https://blog.csdn.net/m0_62749151/article/details/120818533
前言最近需要給discuz加上markdown的解析功能,發(fā)現(xiàn)插件實(shí)在太貴了要199元,個(gè)人覺得這個(gè)功能應(yīng)該不難實(shí)現(xiàn),于是決定自己DIY。本次使用的解析插件是marked。
介紹markedMarked.js 是一個(gè)用 JavaScript 實(shí)現(xiàn)的、功能齊全的 Markdown 解析器和編譯器。可以非常方便的在線編譯 Markdown 代碼為 HTML 并直接顯示,并且支持完全的自定義各種格式。
最終效果DEMO地址(base64):aHR0cHMlM0EvL3d3dy5iZXdpbmR3YXJkLmNvbS90aHJlYWQtNjYtMS0xLmh0bWw=
實(shí)現(xiàn)過程1、在/home/www/template/你的模板/common/header.htm中加入下面的代碼
<script src="https://cdn.bootcdn.net/ajax/libs/marked/2.1.3/marked.min.js"></script>2、在/home/www/template/你的模板/common/footer.htm中加入下面的代碼
<script> window.onload = function () { var markdown_tags = document.getElementsByTagName("markdown"); for (var i = 0; i < markdown_tags.length; i++) { markdown_tags.innerHTML = '<div class="custom-markdown">' + marked(markdown_tags.textContent) + "</div>"; } }</script>3、在discuz后臺(tái)配置-界面-編輯器設(shè)置-Discuz代碼添加一項(xiàng)markdown,找個(gè)圖標(biāo)設(shè)置上去,可用和顯示按鈕勾上,詳情配置如下
標(biāo)簽:markdown替換內(nèi)容:<markdown>{1}</markdown>解釋:markdown代碼參數(shù)個(gè)數(shù):1參數(shù)提示語:markdown嵌套次數(shù):1允許的用戶組:全選4、將下面的css代碼保存成一個(gè)markdown.min.css文件,放到/template/default/common/目錄下
.parsedown-markdown{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica,Arial,sans-serif,Apple Color Emoji,Segoe UI Emoji;line-height:1.5}.parsedown-markdown h1,.parsedown-markdown h2,.parsedown-markdown h3,.parsedown-markdown h4,.parsedown-markdown h5,.parsedown-markdown h6{margin-bottom:16px;font-weight:600;line-height:1.25}.parsedown-markdown h1,.parsedown-markdown h2{padding-bottom:.3em;border-bottom:1px solid #eaecef}.parsedown-markdown h1{font-size:2em}.parsedown-markdown h2{font-size:1.5em}.parsedown-markdown h3{font-size:1.25em}.parsedown-markdown h4{font-size:1em}.parsedown-markdown h5{font-size:.875em}.parsedown-markdown h6{color:#6a737d;font-size:.85em}.parsedown-markdown em{font-style:italic}.parsedown-markdown hr{height:.2em;padding:0;margin:24px 0;border:0;background-color:#e1e4e8}.parsedown-markdown p,.parsedown-markdown blockquote,.parsedown-markdown table,.parsedown-markdown ol,.parsedown-markdown ul,.parsedown-markdown dl,.parsedown-markdown pre{margin-top:0;margin-bottom:15px}.parsedown-markdown li{margin-left:2px}.parsedown-markdown ul>li{list-style-type:disc}.parsedown-markdown ol>li{list-style-type:decimal}.parsedown-markdown pre{background-color:#f6f8fa;border-radius:6px;overflow:auto;padding:4px;font-size:85%;line-height:1.45;border:none !important}.parsedown-markdown p>code,.parsedown-markdown li>code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;padding:.2em .4em;margin:0;font-size:85%;background-color:rgba(27,31,35,.05);border-radius:6px}.parsedown-markdown pre>code{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace}.parsedown-markdown a{color:#0645ad;text-decoration:none}.parsedown-markdown a:visited{color:#0b0080}.parsedown-markdown a:hover{color:#06e}.parsedown-markdown a:active{color:#faa700}.parsedown-markdown a:focus{outline:thin dotted}.parsedown-markdown a:hover,a:active{outline:0}.parsedown-markdown ::-moz-selection{background:rgba(255,255,0,0.3);color:#000}.parsedown-markdown ::selection{background:rgba(255,255,0,0.3);color:#000}.parsedown-markdown a::-moz-selection{background:rgba(255,255,0,0.3);color:#0645ad}.parsedown-markdown a::selection{background:rgba(255,255,0,0.3);color:#0645ad}.parsedown-markdown blockquote{color:#6a737d;padding:0 1em;margin:0;border-left:.25em #dfe2e5 solid}.parsedown-markdown ul,.parsedown-markdown ol{padding-left:2em;margin-left:0}.parsedown-markdown li p:last-child{margin:0}.parsedown-markdown dd{margin:0 0 0 2em}.parsedown-markdown img{border:0;-ms-interpolation-mode:bicubic;vertical-align:middle;max-width:100%}.parsedown-markdown table{margin:.25em auto;width:98%;table-layout:auto;overflow:auto;border-spacing:0;border-collapse:collapse}.parsedown-markdown table thead{background-color:#d9e2df}.parsedown-markdown table tr:nth-child(2n){background-color:#f6f8fa}.parsedown-markdown table tr{border-top:1px solid #c6cbd1}.parsedown-markdown table th{font-weight:600}.parsedown-markdown table td,.parsedown-markdown table th{padding:6px 13px;border:1px solid #c6cbd1}5、在/home/www/template/你的模板/forum/viewthread.htm中的<!--{hook/viewthread_top}-->上面加入下面的代碼
<link rel="stylesheet" href="./template/default/common/markdown.min.css">6、此時(shí)發(fā)布帖子,點(diǎn)擊markdown圖標(biāo)后插入markdown代碼,這里注意最好用純文本模式。
7、發(fā)布的最終效果,如圖
代碼高亮優(yōu)化請(qǐng)到風(fēng)洞網(wǎng)官網(wǎng)查看原文。
參考文章https://www.jianshu.com/p/11eed27e60cd
https://www.tecbbs.com/forum.php?mod=viewthread&tid=6737
關(guān)注風(fēng)洞網(wǎng)微信公眾號(hào)!
作者: 租租 時(shí)間: 2023-3-29 11:08
看到代碼腦殼痛
作者: lovetvb 時(shí)間: 2023-3-29 11:09
BBcode常用標(biāo)簽(入門)
前言:
BBCode是Bulletin Board Code的縮寫,有譯為“BB代碼”者,屬于輕量級(jí)標(biāo)記語言(Lightweight Markup Language)的一種,如字面上所顯示的,它主要是使用在BBS、論壇、Blog等網(wǎng)絡(luò)應(yīng)用上。BBCode最初由Ultimate Bulletin Board討論區(qū)系統(tǒng)發(fā)展出來,因此常見UBB代碼的稱呼。BBCode的語法通常為[標(biāo)記]的形式,即語法左右用兩個(gè)中括號(hào)包圍,以作為與正常文字間的區(qū)別。系統(tǒng)解譯時(shí)遇上中括弧便知道該處是BBcode,會(huì)在解譯結(jié)果輸出到客戶端時(shí)轉(zhuǎn)換成最為通用的HTML語法。[1]
BBcode有兩個(gè)主要目的:
最為通用的HTML語法雖然已相當(dāng)簡單易懂,但仍需要一定時(shí)間學(xué)習(xí)后才能上手,因此BBcode采用更為直覺易學(xué)的語法,轉(zhuǎn)換為HTML的工作則交由系統(tǒng)來代勞。
過去BBS、論壇、Blog也曾經(jīng)設(shè)計(jì)開放HTML語法讓用戶使用,但卻派生出語法輸入錯(cuò)誤時(shí)造成整頁排版錯(cuò)亂、有心人利用HTML語法進(jìn)行XSS式的攻擊與破壞等問題。由于BBcode的轉(zhuǎn)換為系統(tǒng)機(jī)械式的行為,所以可以有效避免人為輸入錯(cuò)誤的問題,而BBcode為預(yù)先設(shè)計(jì)好的語法,也就是說意圖以BBcode達(dá)成所有的HTML語法效果是不可能的,相當(dāng)于一種語法過濾,如此便可避免所有可能發(fā)生的惡意破壞。[2]
盡管現(xiàn)在(Z世代)年齡的人大多都使用的是社交平臺(tái)自帶的富文本編輯器(比如知乎的編輯器),但是BBcode仍然在各個(gè)論壇(尤其是國內(nèi)基于Discuz的論壇)廣泛使用。
[3]加粗:
粗體字 Bold text
斜體:
斜體字 Italic
刪除線:
刪除線
下劃線:
下劃線
改變字號(hào):
[size=n]大小可變 #注:1≤n≤7
URL:(郵件地址類似)
可直接插入,Discuz會(huì)識(shí)別。
當(dāng)然,你也可以這么寫:
示例網(wǎng)址
引用:
列表(無序):
列表項(xiàng)目
列表項(xiàng)目
列表(有序):
[olist]開始有序號(hào)列表
列表項(xiàng)目A
列表項(xiàng)目B
[/olist]
飛行:
[fly]飛行文字[/fly]
滾動(dòng):
[move]滾動(dòng)文字[/move]
參考- ^來自Wiki-BBcode
- ^同[1]
- ^來自于x64論壇-explore的帖子 https://bbs.x64.site/forum.php?mod=viewthread&tid=2160&fromuid=171
作者: false001 時(shí)間: 2023-4-1 18:31
樓主是否可以寫成插件?修改文件不方便升級(jí)。
作者: gulaibai 時(shí)間: 2023-4-3 15:55
看不懂是啥意思
作者: 深淵啟源 時(shí)間: 2023-10-12 09:10
沒想到能在dz搜到自己發(fā)的文章{:4_95:}
作者: myboss 時(shí)間: 2024-8-26 22:34
主要懶得研究,等著官方迭代,支持 markdown 代碼
作者: 你若安好那還得了 時(shí)間: 2024-8-26 23:53
別想了,你想等到官方支持markdown?不可能的,目前放出的X5都是采用JSON編輯器,目前我看過這么多論壇,除了華為開發(fā)者論壇使用的markdown編輯器,其他的沒一個(gè)用markdown編輯器的,我猜想為啥不用(要想技術(shù)實(shí)現(xiàn),小作坊網(wǎng)站有心無力,幾乎不可能,大一點(diǎn)的,有能力但是由于以往內(nèi)容很多突然更改編輯器可能對(duì)之前的內(nèi)容造成不可逆的后果,當(dāng)然這是我個(gè)人的猜想)
作者: yxmsvip 時(shí)間: 2024-8-27 09:51
為啥不格式化本文呢?
作者: 湖中沉 時(shí)間: 2024-8-27 10:03
markdown編輯器更需要一定的專業(yè)知識(shí),實(shí)際上這種編輯器對(duì)于網(wǎng)站的受眾普通用戶來說,體驗(yàn)并不好,很多人甚至都無法理解,為什么加多個(gè) # 號(hào)是不同級(jí)別的標(biāo)題,加多個(gè) * 號(hào)是加粗等,所見即所得編輯器在無專業(yè)背景的用戶身上,體驗(yàn)遠(yuǎn)好于md編輯器
作者: 73327424 時(shí)間: 2024-12-29 21:49
排版亂了,修改一下
實(shí)現(xiàn)過程1、在/home/www/template/你的模板/common/header.htm中加入下面的代碼
- <script src="https://cdn.bootcdn.net/ajax/libs/marked/2.1.3/marked.min.js"></script>
復(fù)制代碼
2、在/home/www/template/你的模板/common/footer.htm中加入下面的代碼
- <script>
- window.onload = function() {
- var markdown_tags = document.getElementsByTagName("markdown");
- for (var i = 0; i < markdown_tags.length; i++) {
- markdown_tags.innerHTML = '<div class="custom-markdown">' + marked(markdown_tags.textContent) + "</div>";
- }
- }
- </script>
復(fù)制代碼
3、在discuz后臺(tái)配置-界面-編輯器設(shè)置-Discuz代碼添加一項(xiàng)markdown,找個(gè)圖標(biāo)設(shè)置上去,可用和顯示按鈕勾上,詳情配置如下
標(biāo)簽:markdown
替換內(nèi)容:<markdown>{1}</markdown>
解釋:markdown代碼
參數(shù)個(gè)數(shù):1
參數(shù)提示語:markdown
嵌套次數(shù):1
允許的用戶組:全選
4、將下面的css代碼保存成一個(gè)markdown.min.css文件,放到/template/default/common/目錄下
- .parsedown-markdown {
- font-family: -apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji;
- line-height: 1.5
- }
- .parsedown-markdown h1,
- .parsedown-markdown h2,
- .parsedown-markdown h3,
- .parsedown-markdown h4,
- .parsedown-markdown h5,
- .parsedown-markdown h6 {
- margin-bottom: 16px;
- font-weight: 600;
- line-height: 1.25
- }
- .parsedown-markdown h1,
- .parsedown-markdown h2 {
- padding-bottom: .3em;
- border-bottom: 1px solid #eaecef
- }
- .parsedown-markdown h1 {
- font-size: 2em
- }
- .parsedown-markdown h2 {
- font-size: 1.5em
- }
- .parsedown-markdown h3 {
- font-size: 1.25em
- }
- .parsedown-markdown h4 {
- font-size: 1em
- }
- .parsedown-markdown h5 {
- font-size: .875em
- }
- .parsedown-markdown h6 {
- color: #6a737d;
- font-size: .85em
- }
- .parsedown-markdown em {
- font-style: italic
- }
- .parsedown-markdown hr {
- height: .2em;
- padding: 0;
- margin: 24px 0;
- border: 0;
- background-color: #e1e4e8
- }
- .parsedown-markdown p,
- .parsedown-markdown blockquote,
- .parsedown-markdown table,
- .parsedown-markdown ol,
- .parsedown-markdown ul,
- .parsedown-markdown dl,
- .parsedown-markdown pre {
- margin-top: 0;
- margin-bottom: 15px
- }
- .parsedown-markdown li {
- margin-left: 2px
- }
- .parsedown-markdown ul>li {
- list-style-type: disc
- }
- .parsedown-markdown ol>li {
- list-style-type: decimal
- }
- .parsedown-markdown pre {
- background-color: #f6f8fa;
- border-radius: 6px;
- overflow: auto;
- padding: 4px;
- font-size: 85%;
- line-height: 1.45;
- border: none !important
- }
- .parsedown-markdown p>code,
- .parsedown-markdown li>code {
- font-family: SFMono-Regular, Consolas, Liberation Mono, Menlo, monospace;
- padding: .2em .4em;
- margin: 0;
- font-size: 85%;
- background-color: rgba(27, 31, 35, .05);
- border-radius: 6px
- }
- .parsedown-markdown pre>code {
- font-family: SFMono-Regular, Consolas, Liberation Mono, Menlo, monospace
- }
- .parsedown-markdown a {
- color: #0645ad;
- text-decoration: none
- }
- .parsedown-markdown a:visited {
- color: #0b0080
- }
- .parsedown-markdown a:hover {
- color: #06e
- }
- .parsedown-markdown a:active {
- color: #faa700
- }
- .parsedown-markdown a:focus {
- outline: thin dotted
- }
- .parsedown-markdown a:hover,
- a:active {
- outline: 0
- }
- .parsedown-markdown ::-moz-selection {
- background: rgba(255, 255, 0, 0.3);
- color: #000
- }
- .parsedown-markdown ::selection {
- background: rgba(255, 255, 0, 0.3);
- color: #000
- }
- .parsedown-markdown a::-moz-selection {
- background: rgba(255, 255, 0, 0.3);
- color: #0645ad
- }
- .parsedown-markdown a::selection {
- background: rgba(255, 255, 0, 0.3);
- color: #0645ad
- }
- .parsedown-markdown blockquote {
- color: #6a737d;
- padding: 0 1em;
- margin: 0;
- border-left: .25em #dfe2e5 solid
- }
- .parsedown-markdown ul,
- .parsedown-markdown ol {
- padding-left: 2em;
- margin-left: 0
- }
- .parsedown-markdown li p:last-child {
- margin: 0
- }
- .parsedown-markdown dd {
- margin: 0 0 0 2em
- }
- .parsedown-markdown img {
- border: 0;
- -ms-interpolation-mode: bicubic;
- vertical-align: middle;
- max-width: 100%
- }
- .parsedown-markdown table {
- margin: .25em auto;
- width: 98%;
- table-layout: auto;
- overflow: auto;
- border-spacing: 0;
- border-collapse: collapse
- }
- .parsedown-markdown table thead {
- background-color: #d9e2df
- }
- .parsedown-markdown table tr:nth-child(2n) {
- background-color: #f6f8fa
- }
- .parsedown-markdown table tr {
- border-top: 1px solid #c6cbd1
- }
- .parsedown-markdown table th {
- font-weight: 600
- }
- .parsedown-markdown table td,
- .parsedown-markdown table th {
- padding: 6px 13px;
- border: 1px solid #c6cbd1
- }
復(fù)制代碼
5、在/home/www/template/你的模板/forum/viewthread.htm中的<!--{hook/viewthread_top}-->上面加入下面的代碼
- <link rel="stylesheet" href="./template/default/common/markdown.min.css">
復(fù)制代碼
作者: 73327424 時(shí)間: 2024-12-31 12:52
這個(gè)已經(jīng)不能用了
| 歡迎光臨 Discuz! 官方交流社區(qū) (http://www.9999xn.com/) |
Powered by Discuz! X5.0 |
久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线
国产一区二区精品|
夜夜嗨av一区二区三区|
最新国产の精品合集bt伙计|
国产精品资源在线看|
亚洲影院一区|
136国产福利精品导航|
成人午夜免费视频|
欧美日韩国产bt|
青青草国产精品亚洲专区无|
国产欧美综合一区二区三区|
国产精品无码永久免费888|
caoporm超碰国产精品|
欧美一卡二卡在线|
国模无码大尺度一区二区三区|
久久综合九色综合欧美狠狠|
无码av中文一区二区三区桃花岛|
99在线观看免费视频精品观看|
国产精品乱码妇女bbbb|
99精品视频在线观看|
欧美mv日韩mv国产|
国产成人av一区|
欧美日韩激情一区二区|
免费观看91视频大全|
日本乱人伦aⅴ精品|
日韩国产欧美视频|
国产精品毛片va一区二区三区|
一区在线观看免费|
一区在线电影|
亚洲色图欧洲色图|
一区二区亚洲精品|
亚洲女与黑人做爰|
亚洲一区二区三区精品动漫
|
在线播放91灌醉迷j高跟美女|
韩国欧美国产1区|
欧美在线你懂的|
美女视频黄 久久|
欧美无砖专区一中文字|
国产自产2019最新不卡|
欧美一级在线观看|
国产suv精品一区二区三区|
欧美zozozo|
91日韩精品一区|
国产婷婷色一区二区三区在线|
欧美xx69|
国产精品欧美精品|
91久久中文|
亚洲高清免费观看高清完整版在线观看|
国产亚洲二区|
日av在线不卡|
欧美精品aⅴ在线视频|
国产99久久久精品|
久久男人中文字幕资源站|
欧美日韩国产精品一卡|
国产精品视频线看|
99精品国产高清一区二区|
视频一区二区欧美|
717成人午夜免费福利电影|
成人高清视频在线观看|
中文一区二区完整视频在线观看|
亚洲三级色网|
五月天网站亚洲|
538在线一区二区精品国产|
99精品久久99久久久久|
亚洲欧美一区二区在线观看|
国产精品毛片va一区二区三区|
日韩精品1区2区3区|
在线播放日韩导航|
91小视频免费看|
亚洲欧美福利一区二区|
色综合久久66|
国产精品一区二区免费不卡|
久久婷婷综合激情|
在线视频一区观看|
看国产成人h片视频|
亚洲精品在线三区|
亚洲国产激情|
日本欧美韩国一区三区|
日韩一区二区三区视频在线|
欧美一区成人|
亚洲电影一区二区三区|
欧美高清视频www夜色资源网|
99精品在线免费|
一区二区三区精品久久久|
91精品婷婷国产综合久久|
欧美日韩一区在线观看视频|
亚洲mv大片欧洲mv大片精品|
欧美一区二区三区系列电影|
欧美日韩91|
日韩精品一二三|
日韩欧美不卡在线观看视频|
好吊一区二区三区|
日韩激情一二三区|
精品福利av导航|
国产伦精品一区二区三区|
国产一区欧美一区|
国产欧美一区二区精品性色|
免费亚洲网站|
国产精品538一区二区在线|
国产精品视频免费看|
在线观看91视频|
国内精品福利|
激情综合色综合久久|
国产精品久久久久永久免费观看
|
国产精品亚洲综合|
懂色中文一区二区在线播放|
亚洲免费成人av|
91精品国产综合久久久久久|
永久域名在线精品|
国产精品1区二区.|
亚洲一区二区视频|
欧美草草影院在线视频|
国产亚洲精品v|
波多野结衣中文字幕一区二区三区
|
欧美日韩久久一区二区|
亚洲手机视频|
精品中文字幕一区二区小辣椒|
国产亚洲一二三区|
欧美综合色免费|
韩日欧美一区|
国产黄色成人av|
亚洲大尺度视频在线观看|
久久综合久久久久88|
色婷婷综合激情|
欧美色123|
国产一区二区免费视频|
亚洲男人的天堂一区二区|
日韩精品在线网站|
久久综合网络一区二区|
欧美日韩mv|
国产大陆亚洲精品国产|
一区二区三区在线视频免费|
日韩欧美一区在线|
色欧美日韩亚洲|
亚洲精品一品区二品区三品区|
成人免费不卡视频|
日本欧美一区二区三区乱码|
日韩美女精品在线|
久久亚区不卡日本|
91麻豆精品国产|
久久久久久一区二区|
影音先锋亚洲精品|
a美女胸又www黄视频久久|
欧美aaa在线|
一区二区日韩av|
国产欧美精品一区aⅴ影院
|
色综合久久久久久久|
亚洲高清免费|
91亚洲精品久久久蜜桃网站|
国内精品不卡在线|
五月婷婷久久综合|
亚洲一区二区三区爽爽爽爽爽
|
天天综合色天天综合色h|
亚洲少妇最新在线视频|
欧美精品一区二区在线播放|
欧美色视频在线观看|
国产九区一区在线|
精品成人久久|
欧美日韩一区二区高清|
a在线欧美一区|
国产精品911|
精品亚洲成a人|
蜜臂av日日欢夜夜爽一区|
亚洲自拍偷拍网站|
综合久久国产九一剧情麻豆|
国产一区二区三区免费看|
日本视频在线一区|
天天射综合影视|
亚洲一卡二卡三卡四卡五卡|
亚洲精品视频在线观看免费|
欧美高清在线精品一区|
精品日韩一区二区三区免费视频|
在线播放一区二区三区|
欧美视频在线观看一区|
色哟哟一区二区在线观看|
国产精品美女黄网|
正在播放亚洲|
亚洲精品色图|
亚洲精品在线观看免费|
国产欧美大片|
国产欧美一区二区三区另类精品|
91久久国产自产拍夜夜嗨|
在线观看一区欧美|
亚洲精品专区|
亚洲精品中文字幕在线|
99riav国产精品|
亚洲精选久久|
99av国产精品欲麻豆|
国产精品久久亚洲7777|
一区二区冒白浆视频|
国产精品一区二区三区99
|
一区在线免费观看|
亚洲国产合集|
99精品国产在热久久|
国产欧美一区二区色老头|
国产一区二区高清视频|
亚洲欧美日韩国产一区|
免费在线国产精品|
久久综合九色综合欧美狠狠|
欧美在线观看禁18|
欧美熟乱第一页|