PHP项目中使用 Markdown编辑器
个人站点 :http://oldchen.iwulai.com/
Markdown在技术圈越来越受欢迎,今天为大家带来一款国内开源的比较好用的Markdown编辑器——editor.md。
在这次项目中客户要求后台编辑技术文章使用Markdown编辑器;慌张地看文档.......
需要预览效果可直接访问url:
https://pandao.github.io/editor.md/index.html
同时提供了全套的下载安装教程。github开源地址:
https://github.com/pandao/editor.md/blob/master/examples/image-upload.html
在首页下载完成,解压editor.md-master.zip文件,可以看到如下图的目录结构:
- css目录中可选择editormd.min.css放在对应的项目css目录中;
- js可选择editormd.min.js放置在对应项目的js目录中,需要注意的是同时需要引入jQuery,这里使用jquery.min.js;
- examples文件夹中是一部分核心功能的demo,在使用的过程中用到对应的组件或功能可打开参考;
- fonts是需要用到字体,可一并引入项目;
- images是一些加载类的图片;
- lib是editor.md依赖的第三方js资源,比如流程图的js资源;
- plugins主要是编辑器上面的操作功能插件,比如图片上传等,可选择使用的进行加载;
引入css和js
在使用到editor.md的页面引入css和js:
<!--引入样式文件--> <link rel="stylesheet" href="__PUBLIC__/markdown/examples/css/style.css" /> <link rel="stylesheet" href="__PUBLIC__/markdown/css/editormd.css" /> <!--引入js文件--> <script type="text/javascript" src="__PUBLIC__/markdown/examples/js/jquery.min.js"></script> <script type="text/javascript" src="__PUBLIC__/markdown/editormd.js"></script> <script type="text/javascript" src="__PUBLIC__/markdown/editormd.amd.js"></script>
页面中添加div
在需要添加editor.md编辑器的地方输入以下div:
<!--编辑器开始--> <div id="test-editormd" name="post[post_content]"><textarea name="post[post_content]"></textarea> </div> <!--编辑器结束-->
注意:此处需要注意的是,无论需要html格式的内容还是markdown格式的内容,都只需要写一个textarea。此处有一个很大的坑。不少其他教程中说需要两个textarea,那么会导致后一个textarea后台获得的数据是一个数组,而不是单纯的HTML内容。
页面添加js代码
js代码用来将上面的textarea进行渲染:
<!--js开始--> <script>$(function() {var testEditor = editormd("test-editormd", {width : "90%",height : 600,syncScrolling : "single",path : "__PUBLIC__/markdown/lib/",imageUpload : true,imageFormats : ["jpg","jpeg","gif","png","bmp","webp"],imageUploadURL : "{:U('Portal/AdminPost/upload')}",//上传图片用,,这是tp的上传saveHTMLToTextarea : true})}); </script> <!--js结束-->
上传图片后台代码展示:
public function upload(){if (IS_POST) {//判断是不是POST$savepath=date('Ymd').'/';//上传处理类$config=array('rootPath' => './'.C("UPLOADPATH"),'savePath' => $savepath,'maxSize' => 11048576,'saveName' => array('uniqid',''),'exts' => array('jpg', 'gif', 'png', 'jpeg',"txt",'zip'),'autoSub' => false,);$upload = new \Think\Upload($config);//$info=$upload->upload();$first=array_shift($info);// 开始上传if(!$first) {// 上传错误提示错误信息$this->error($upload->getError());}else{// 上传成功 获取上传文件信息 //返回数据的组装$path=$first['savepath'];$name=$first['savename'];$path_='http://'.$_SERVER['HTTP_HOST']."/data/upload/".$path."/".$name; //必须ajaxReturn$this->ajaxReturn(array('url'=>$path_,'success'=>1,'message'=>'upload success!'));}}}
注意:editor.md
期望你上传图片的服务返回如下json格式的内容
{success : 0 | 1, //0表示上传失败;1表示上传成功message : "提示的信息",url : "图片地址" //上传成功时才返回 }
PHP项目中使用 Markdown编辑器相关推荐
- 如何在vue项目中使用markdown编辑器
在Vue 中使用 Vditor 官方文档 Vditor 安装 npm install vditor --save 引入 import Vditor from 'vditor' import 'vdit ...
- html页面嵌入markdown,在页面中插入Markdown编辑器
前端在页面中插入Markdown编辑器: 1.官网下载:http://pandao.github.io/editor.md/ 2.你的html: Simple example - Editor.md ...
- React中使用Markdown编辑器
前言 因为之前写过一个自己的博客,其中编辑文章使用的是富文本编辑器,后来用到Markdown编辑,感觉要比富文本更好用,这里简单记录一下如何在React中添加Markdown编辑器. 一 安装 这里我 ...
- 在HTML页面中引用Markdown编辑器(Editor.md)
目录 1.下载Ediotor.md 2.引入Ediotor.md 3.确定Ediotor.md在哪里显示 最近写博客项目,用到了Markdown编辑器,这里介绍一款国内好用的Markdown编辑器:E ...
- vue3开发1:在vue3项目中集成ckeditor5编辑器,自定义图片上传,图片编辑排坑(一)
最近尝试用了vue3进行开发,没想到在使用element-plus框架的时候出现了bug(一个星期后官方修复了),所以我对在项目中集成富文本插件ckeditor5比较忐忑,而且也没有vue3中集成ck ...
- csdn中的markdown编辑器如何快速复制粘贴图片?
原文地址:https://www.fang1688.cn/study-code/1434.html 前言 我们在使用csdn的markdown编辑器复制其它网站图片,按住ctrl+C复制选择图片,然后 ...
- Python项目中用富文本编辑器展示精美网页
富文本编辑器实现效果图: 左侧编辑区域,右侧渲染到HTML显示效果,除了渲染时候代码样式有所不同,其他标题.文字.图片基本满足所见即所得的效果 下面讲解富文本编辑器在Django项目中如何使用 1.前 ...
- 快速入门 Editor.MD---在Web项目里使用 Markdown 编辑器
博主参考的文章 什么是Markdown Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. 最直观的方法,CSDN写新文章用Markd ...
- drupal8中安装markdown编辑器
安装以下几个模块 Markdown Libraries API SimpleMDE Markdown Editor 安装SimpleMDE依赖的组件 安装composer php -r "c ...
最新文章
- stm32 IAP APP 相互跳转实验 (keil4 jlink STM32F407ZE
- 简述python程序执行原理_Python程序的执行原理(1)
- java string jdk_Java.lang.String中JDK API 1.6.0摘要。
- 【正十七边形可尺规作图原理】
- 谷歌详述 Zoom 客户端和MMR 服务器中的两个0day
- java 工具箱安装方法,Java工具包的安装配置和使用-JSP教程,Java技巧及代码
- python生成个性二维码学习笔记
- as安装过程中gradle_电磁阀在安装过程中需注意的一些细节
- 一个普通人的震后十年
- CAD 图层颜色更换程序-VLISP源码(免开图层控制中心)
- [补集转化 有序化去重] Ural 1212 Battleship
- Word文档保护怎么取消
- 利器 | Terminal Shell 改造记录 Windows Terminal + ZSH + Tmux
- FI MM CO T-CODE
- unity小技巧收集总结--自用(三)
- 期刊论文调格式的注意事项
- matlab 将图片制作成视频并将视频输出为图片
- MFC软件获取USB设备的制造商、产品、序列号
- 【硬件】对电源模块的梳理2.0(含LDO参数详解、DCDC参考设计)
- Java JSF网上资源大全(持续更新)