歡迎訪問Oldpan博客,分享人工智能有趣消息,持續醞釀深度學習質量文。php
既然咱們的博客css
Oldpan博客html
主要的內容是人工智能、機器學習、深度學習,許多理論推理和公示展現是必不可少的,不能由於公式編輯的不方便而減小對數學公式的展現和編寫,在文章中一個好的公式是很重要的,一個好的公式勝似千言萬語的解釋,因此,咱們必須解決在博客中寫公式的問題,另外圖片的展現也很重要,良好的可視化能夠大大減輕閱讀者的理解難度,達到見圖知意的目的git
以前我在這篇文章中簡單介紹過如何利用Markdown在wordpress中進行寫做:oldpan.me/archives/wo… (這篇文章與此篇文章接軌,建議都看)github
可是,由於上面的方法是經過粘貼渲染好的Markdown格式的html文件到wordpress的文本中:bash
雖然能夠正常顯示和利用markdown的格式排版,仍是有缺點的:服務器
原本不是什麼大問題,但有一點!markdown
既然咱們的博客主要的內容是人工智能、機器學習、深度學習,許多理論推理和公示展現是必不可少的,不能由於公式編輯的不方便而減小對數學公式的展現和編寫,在文章中一個好的公式是很重要的,一個好的公式勝似千言萬語的解釋,因此,咱們必須解決在博客中寫公式的問題,另外圖片的展現也很重要,良好的可視化能夠大大減輕閱讀者的理解難度,達到見圖知意的目的app
總之一句,這個問題必須解決,也有必要解決。框架
解決方法其實並不難,不要被嚇到,咱們把全部須要的基礎環境都搭好以後,就能夠實現很方便快捷地去按照markdown的格式寫文章,渲染好,直接將html源碼粘貼到咱們的wordpress中就能夠看到效果了。
ps:最終效果在文末。
建議你們把在最上面提到的文章看一遍,這裏就不進行重複,總之咱們須要:
katex的css文件從這裏獲取:github.com/Khan/KaTeX
注意,上面環境若是沒有設置好,下面的操做無效
咱們公式的顯示,最多使用的是MathJax,經過一些在markdown編輯器中,咱們只要成$$f(x) = \int_{-\infty}^\infty \hat f(\xi)\,e^{2 \pi i \xi x} \,d\xi$$
這樣,就能夠渲染成下面的形式:
但這裏咱們使用的是katex
,一個相似於Mathjax
的開源的公式框架,使用的語法相似,可是顯示的速度和效果都比前者更好。
咱們簡單談一下公式的渲染流程:利用js
代碼渲染組成代碼的html格式而後配合css
文件去總體顯示。
這裏咱們採起的方案是,利用vscode
中的MPE Preview
插件獲得公式經過js渲染好的html文件,而後配合咱們服務器(網站)上本身的katex-css
文件去達到顯示效果: (這個插件詳細信息看上面提到的以前的文章)
獲得利用Markdown插件編輯好文本的html的文件,
其中,咱們的代碼塊的html內容爲(部分展現):
<span class="katex-display"><span class="katex"><span class="katex-mathml"><math><semantics><mrow><mi>f</mi><mo>(</mo><mi>x</mi><mo>)</mo><mo>=</mo><msubsup><mo>∫</mo><mrow><mo>−</mo><mi mathvariant="normal">∞</mi></mrow><mi mathvariant="normal">∞</mi></msubsup><mover accent="true"><mi>f</mi><mo>^</mo></mover><mo>(</mo><mi>ξ</mi><mo>)</mo><mspace width="0.16667em"></mspace><msup><mi>e</mi><mrow><mn>2</mn><mi>π</mi><mi>i</mi><mi>ξ</mi><mi>x</mi></mrow></msup><mspace width="0.16667em"></mspace><mi>d</mi><mi>ξ</mi></mrow><annotation encoding="application/x-tex">f(x) = \int_{-\infty}^\infty
\hat f(\xi)\,e^{2 \pi i \xi x}
\,d\xi</annotation></semantics></math></span><span class="katex-html" aria-hidden="true"><span class="strut" style="height:1.414292em;"></span><span class="strut bottom" style="height:2.384573em;vertical-align:-0.970281em;"></span><span class="base"><span class="mord mathit" style="margin-right:0.10764em;">f</span><span class="mopen">(</span><span class="mord mathit">x</span><span class="mclose">)</span><span class="mord rule" style="margin-right:0.2777777777777778em;"></span><span class="mrel">=</span><span class="mord rule" style="margin-right:0.2777777777777778em;"></span><span class="mop"><span class="mop op-symbol large-op" style="margin-right:0.44445em;position:relative;top:-0.0011249999999999316em;">∫</span><span class="msupsub"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:1.414292em;"><span style="top:-1.7880500000000001em;margin-left:-0.44445em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">−</span><span class="mord mtight">∞</span></span></span></span><span style="top:-3.8129000000000004em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight">∞</span></span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.970281em;"></span></span></span></span></span><span class="mord rule" style="margin-right:0.16666666666666666em;"></span><span class="mord accent"><span class="vlist-t vlist-t2"><span class="vlist-r"><span class="vlist" style="height:0.9578799999999998em;"><span style="top:-3em;"><span class="pstrut" style="height:3em;"></span><span class="mord mathit" style="margin-right:0.10764em;">f</span></span><span style="top:-3.26344em;"><span class="pstrut" style="height:3em;"></span><span class="accent-body" style="left:-0.08332999999999999em;">^</span></span></span><span class="vlist-s"></span></span><span class="vlist-r"><span class="vlist" style="height:0.19444em;"></span></span></span></span><span class="mopen">(</span><span class="mord mathit" style="margin-right:0.04601em;">ξ</span><span class="mclose">)</span><span class="mspace thinspace"></span><span class="mord"><span class="mord mathit">e</span><span class="msupsub"><span class="vlist-t"><span class="vlist-r"><span class="vlist" style="height:0.8991079999999999em;"><span style="top:-3.1130000000000004em;margin-right:0.05em;"><span class="pstrut" style="height:2.7em;"></span><span class="sizing reset-size6 size3 mtight"><span class="mord mtight"><span class="mord mtight">2</span><span class="mord mathit mtight" style="margin-right:0.03588em;">π</span><span class="mord mathit mtight">i</span><span class="mord mathit mtight" style="margin-right:0.04601em;">ξ</span><span class="mord mathit mtight">x</span></span></span></span></span></span></span></span></span><span class="mspace thinspace"></span><span class="mord mathit">d</span><span class="mord mathit" style="margin-right:0.04601em;">ξ</span></span></span></span></span>複製代碼
上面這些代碼就是前面那個公式的html代碼,不少吧,一個小小的代碼用html表示出來居然這麼多。
可是要注意,這時咱們並不能直接將這些html文件粘貼到wordpress中的原生編輯器的文本中,由於這個原生的編輯器會致使粘貼過去的公式的html標籤自動轉化爲亂碼。(這個編輯器會將識別不了的tag轉化爲空格,致使咱們根本沒法正確顯示咱們的代碼),咱們須要粘貼的只是html文本,因此咱們須要一個能夠在文章頁面中粘貼html文本的插件:
Elementor
這個插件來直接粘貼html文本(你也可使用其餘的html插件):
經測試,Elementor這個插件中插入html
文件也是遵循wordpress的自動格式轉化語法,因此無法使用,那麼應該怎麼辦,想了想,能夠經過自定義端的方式來實現:
添加一個自定義端,名稱隨便起,我這裏是show_html
,而後內容就是咱們的要粘貼的html源碼。
而後在你的文章頁面,也就是修改你的文章的html頁面:
在文章內容tag附近選擇合適的位置添加顯示這個自定義端的代碼:
<div class="kratos-post-content" data-name="<?php echo the_author_nickname(); ?>">
<?php the_content(); ?>
<div class="post-content-mine"><?php echo get_post_meta($post->ID,'show_html',true); ?></div>複製代碼
上面第三行就是咱們添加的代碼。
這樣保存自定義段就能夠將自定義段當作文章內容來進行顯示了。
圖片在markdown中也就是一句話的事兒,有專門的格式:![圖片標題](圖片地址)
可是,若是圖片一旦多了,咱們總不可能上傳一張圖片,而後獲得地址,而後這樣寫,而後繼續....這樣寫太太太麻煩了,因此仍是利用MPE Preview這個插件來實現方面的圖片上傳:
首先咱們須要設置這個插件的圖片上傳渠道,我這邊是七牛雲,因此在用戶設置中設置密匙API,能夠經過七牛雲專門的API實現圖片的快速上傳:
設置好以後,而後在預覽窗口右鍵點擊image Helper
而後選擇qiniu
也就是七牛作圖牀,而後upload圖片。這樣你的圖片就會出如今編輯器中,本身隨便調整位置就行,很方便。
圖片展現,上面的圖片已經都很好的展現了,如今展現一下公式的效果:
最終的效果就是,咱們在markdown編輯器中編輯好咱們的文章,什麼公式什麼圖片的都弄好,而後直接將markdown文章生成的html源碼粘貼到Wordpress中便可。
文章來源於OLDPAN博客,歡迎來訪:Oldpan博客
歡迎關注Oldpan博客公衆號,持續醞釀深度學習質量文: