之前,站長圖庫分享了一篇教程:WordPress添加投稿功能,今天要講的是如何給這個投稿功能添加一個富文本編輯器(也包括了圖片上傳功能),原來的代碼只能實現一個簡單的純文本輸入框,對于投稿者的輸入體驗不太好。
一、下載KindEditor
這里我們將使用KindEditor來作為我們的編輯器,點此下載KindEditor.zip 下載后解壓,將文件夾重命名為kindeditor,放到你當前主題文件夾下。
二、修改HTML頁面
打開WordPress添加投稿功能,下面我們將對這篇文章中的代碼進行修改。
將代碼一中第41行的</form>
改成:
</form> <script charset="utf-8" src="<?php bloginfo('template_url'); ?>/kindeditor/kindeditor-min.js"></script> <script charset="utf-8" src="<?php bloginfo('template_url'); ?>/kindeditor/lang/zh_CN.js"></script> <script> /* 編輯器初始化代碼 start */ var editor; KindEditor.ready(function(K) { editor = K.create('#tougao_content', { resizeType : 1, allowPreviewEmoticons : false, allowImageUpload : true, /* 開啟圖片上傳功能,不需要就將true改成false */ items : [ 'fontname', 'fontsize', '|', 'forecolor', 'hilitecolor', 'bold', 'italic', 'underline', 'removeformat', '|', 'justifyleft', 'justifycenter', 'justifyright', 'insertorderedlist', 'insertunorderedlist', '|', 'emoticons', 'image', 'link'] }); }); /* 編輯器初始化代碼 end */ </script>
三、php代碼小修改
代碼二第43行代碼:
$content = isset( $_POST['tougao_content'] ) ? trim(htmlspecialchars($_POST['tougao_content'], ENT_QUOTES)) : '';
改成:
$content = isset( $_POST['tougao_content'] ) ? trim($_POST['tougao_content']) : ''; $content = str_ireplace('?>', '?>', $content); $content = str_ireplace('<?', '<?', $content); $content = str_ireplace('<script', '<script', $content); $content = str_ireplace('<a ', '<a rel="external nofollow" ', $content);
四、自定義編輯器功能
經過以上三步的修改,目前你的編輯器就可以正常使用了。但是對不同人來說,他們的需求可能不太一樣,有人可能會覺得上面的編輯器太過簡單。那么怎樣自定義編輯器的功能呢?這里我就不講編程了,簡單點就找編輯器自帶的樣例來說就行了。
我們下載的kindeditor目錄下有個examples文件夾,這里是部分演示,雙擊打開index.html可以看到所有演示。你是否看中某個演示呢?那就用文本編輯器打開它的html文件,查看里面的代碼。這些html文件的代碼中都可以看到類似代碼:
<script charset="utf-8" src="../kindeditor-min.js"></script> <script charset="utf-8" src="../lang/zh_CN.js"></script> <script> ... 編輯器初始化代碼 </script>
將以上代碼中 編輯器初始化代碼 那部分代碼替換第三步中的編輯器初始化代碼,然后將 'textarea[name="content"]' ,改成 '#tougao_content' 即可。
好了,添加個編輯器就是這么簡單。如果你會編程,或者懂看文檔,動手能力強,可以看看KindEditor的文檔,自己動手玩玩:KindEditor文檔