1.1. drupal 7x-ckeditor4x

插件下载:Drupal 7x,

1.1.1. 安装ckeditor4x

下载插件

说明:下载并解压

CKEditor4x插件:https://yunpan.cn/cxWVSmK2UNIad  访问密码 1784

IMCE:https://yunpan.cn/cxWju9L47cY6I  访问密码 4a72

 

上传插件

路径:/sites/all/modules/

 

下载CKEditor4x编辑器

下载并解压

路径:/sites/all/modules/ckeditor/

地址:https://yunpan.cn/cxWjiSsaDFFPe  访问密码 5e98

 

 

安装ckeditor

 

启用本地路径

打开 信息面板 –   配置  -   ckeditor

选择本地ckeditor路径,不要使用cdn加速

 

 

1.1.2. 集成到ckeditor

 

上传screencapture插件

路径:/sites/all/modules/ckeditor/plugins/

 

启用插件

 

 

 

 

默认在Available buttons工具栏中,需要从此工具栏拖到Current toolbar中

拖拽到Current toolbar中

 

 

1.1.3. 集成到页面

 

上传ScreenCapture文件夹

路径:sites/all/

 

添加头文件及初始化代码

说明:为当前主题的template.php文件添加头文件及初始化代码

 

添加upload.php

路径:sites/all/ScreenCapture/upload.php

代码如下:

<?php

ob_start();

//201201/10

$timeDir = date("Ym")."/".date("d");

$uploadDir = dirname(__FILE__).'../../../default/files/field/image/'.$timeDir;

$curDomain = "http://".$_SERVER["HTTP_HOST"]."/drupal/";

//相对路径 http://www.ncmem.com/upload/2012-1-10/

$relatPath = $curDomain ."sites/default/files/field/image/" . $timeDir . "/";

 

//自动创建目录。upload/2012-1-10

if(!is_dir($uploadDir))

{

     mkdir($uploadDir,0777,true);

}

 

//如果PHP页面为UTF-8编码,请使用urldecode解码文件名称

//$fileName = urldecode($_FILES['postedFile']['name']);

//如果PHP页面为GB2312编码,则可直接读取文件名称

$fileName = $_FILES['file']['name'];

$tmpName = $_FILES['file']['tmp_name'];

 

//取文件扩展名jpg,gif,bmp,png

$path_parts = pathinfo($fileName);

$ext = $path_parts["extension"];

$ext = strtolower($ext);//jpg,png,gif,bmp

 

//只允许上传图片类型的文件

if($ext == "jpg"

     || $ext == "jpeg"

     || $ext == "png"

     || $ext == "gif"

     || $ext == "bmp")

{

     //年_月_日_时分秒毫秒.jpg

     $saveFileName = $fileName;

 

     //xxx/2011_05_05_091250000.jpg

     $savePath = $uploadDir . "/" . $saveFileName;

 

     //另存为新文件名称

     if (!move_uploaded_file($tmpName,$savePath))

     {

         exit('upload error!' . "文件名称:" .$fileName . "保存路径:" . $savePath);

     }

}

 

//输出图片路径

//$_SERVER['HTTP_HOST'] localhost:81

//$_SERVER['REQUEST_URI'] /FCKEditor2.4.6.1/php/test.php

$reqPath = str_replace("upload.php","",$_SERVER['REQUEST_URI']);

echo $relatPath .  $saveFileName;

header('Content-type: text/html; charset=utf-8');

header('Content-Length: ' . ob_get_length());

?>

 

 

修改域名及文件存储路径

 

修改上传地址

 

1.1.4. 更新缓存

 

 

 

1.1.5. 整合效果

 

图片存储结构

 

 

 

ScreenCapture-drupal 7.34-ckeditor4x整合教程的更多相关文章

  1. WordPress 3.7.1-web截屏插件整合教程-Xproer.ScreenCapture

    插件下载(PHP):wordpress 3.7.1, 说明:由于许多插件可能使用相同钩子,导致冲突,所以提供手支方式整合. 1.上传插件目录. 说明:WordPress 3.7.1 使用的是TinyM ...

  2. WordPaster-UEditor1.x整合教程

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  3. TinyMCE3.x整合教程-Xproer.WordPaster

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  4. KindEditor3.x整合教程-Xproer.WordPaster

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  5. FCKEditor2.x整合教程-Xproer.WordPaster

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  6. CKEditor4.x整合教程-Xproer.WordPaster

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  7. eWebEditor9.x整合教程-Xproer.WordPaster

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  8. TinyMCE4.x整合教程-Xproer.WordPaster

    版权所有 2009-2017 荆门泽优软件有限公司 保留所有权利 官方网站:http://www.ncmem.com/ 产品首页:http://www.ncmem.com/webplug/wordpa ...

  9. phpcmsv9 阿里云OSS云存储整合教程

    该教程算不上是phpcmsv9阿里云oss插件,所以整个修改及其代码覆盖前请一定记得备份.还有一点就是后台发布文章时上传的附件还是会保存在你的服务器上,基于以下原因:1.个人的需求是前台页面需要使用t ...

  10. 详细整合教程(Spring+SpringMVC+MyBatis)

    详细整合教程(Spring+SpringMVC+MyBatis) http://blog.csdn.net/gebitan505/article/details/44455235/

随机推荐

  1. Storm概念理解

    组成: Topology是Storm里的最高抽象概念,相当于Hadoop里的MapReduce,Topology(流转换图)由Spouts和Bolts组成.Spout创建Stream,Stream由无 ...

  2. 通过Java代码装配Bean

    上面梳理了通过注解来隐式的完成了组件的扫描和自动装配,下面来学习下如何通过显式的配置的装配bean 二.通过Java类装配bean 在前面定义了HelloWorldConfig类,并使用@Compon ...

  3. TextBox 设置数据源的自动补全输入字符串功能

    这个东西首先说明是不是自己原创,但是比较简单.所以讲起分享如下.主要是用到TextBox的自动补全属性,这个东西虽然自己以前经常用TextBox,但是补全从没接触过. 关键代码是在窗体载入时加载如下代 ...

  4. django html模板继承 {%block 标记名} {%endblock%}

    对于url文件 url(r'^tp1/', views.tp1) 对于views文件,跳转到tp1.html 同时将list列表传到前端 def tp1(request): list = [1, 2, ...

  5. 出现The folder is already a source folder

    右键build path -> configure build path -> source ,选择 src/main/java.src/test/java删除,然后再新建.

  6. Python与Go插入排序

    #!/usr/bin/env python # -*- coding: utf-8 -*- # 插入排序 # 时间复杂度 O(n^2) import time def logger(func): st ...

  7. Robocopy和xxcopy全掌握

    Windows提供的复制操作功能实在是太过简陋,可定制性又不强,在复制.移动.备份文件夹的时候,总要循环往复做多次操作.现在我们就向你介绍两款强力复制备份软件:Robocopy和XXCOPY,具体功能 ...

  8. Python中装饰器(转)

    本文由 伯乐在线 - 7even 翻译,艾凌风 校稿.未经许可,禁止转载!英文出处:Simeon Franklin.欢迎加入翻译组. 好吧,我标题党了.作为 Python 教师,我发现理解装饰器是学生 ...

  9. Node.js简介(转)

    目前,Node.js是在前端页面开发中十分受欢迎的,它是一套用来编写高性能网络服务器的JavaScript工具包,在本文中,将带领各位初学者介绍Node JS的基本知识,要求本文的阅读对象为有一定Ja ...

  10. spring4-3-AOP-AspectJ注解-01-简单使用

    1.引入类库 <dependency> <groupId>org.springframework</groupId> <artifactId>sprin ...