增强AW_Blog插件之后台文章编辑新增一图片字段
2012-01-10 22:23
316 查看
上一次讲了给AW_Blog插件后台文章列表添加分类栏,今天继续来加强AW_Blog,给每个文章新增一个独立的图片字段。为什么要新加一个字段呢,文章内容里不是也可以添加图片吗?这是因为某些情况下,独立的图片字段是必需的,如果要把AW_Blog当做一个简单的CMS来用的话,如下图:
这里跟文章相关的图片,如果没有独立的图片字段,那就只能想办法从文章内容中抓取图片出来,不仅难度很高(专业CMS都有这个功能),而且无法保证图片比例的一致性,这时候有一个单独的图片字段的话就可以针对性的上传要显示的图片。
打开AW_Blog_Block_Manage_Blog_Edit_Form文件,给表单添加一个属性,表示该表单接受文件上传
打开AW_Blog_Block_Manage_Blog_Edit_Tab_Form文件,新增需要添加的表单项
打开AW_Blog_Manage_BlogController文件,在saveAction里添加处理文件上传的代码
后台显示效果如下:
前台在模板文件中调用该图片的方式,在适当的位置加入类似下面的代码:
补丁下载链接:http://www.kuaipan.cn/file/id_5552585259880364.html
PS:补丁里只包含几个php文件,数据库字段的话要自己添加,容许我偷懒下吧
这里跟文章相关的图片,如果没有独立的图片字段,那就只能想办法从文章内容中抓取图片出来,不仅难度很高(专业CMS都有这个功能),而且无法保证图片比例的一致性,这时候有一个单独的图片字段的话就可以针对性的上传要显示的图片。
打开AW_Blog_Block_Manage_Blog_Edit_Form文件,给表单添加一个属性,表示该表单接受文件上传
protected function _prepareForm() { $form = new Varien_Data_Form(array( 'id' => 'edit_form', 'action' => $this->getUrl('*/*/save', array('id' => $this->getRequest()->getParam('id'))), 'method' => 'post', 'enctype' => 'multipart/form-data' ) ); $form->setUseContainer(true); $this->setForm($form); return parent::_prepareForm(); }
打开AW_Blog_Block_Manage_Blog_Edit_Tab_Form文件,新增需要添加的表单项
。。。。。。。。。。。 $fieldset->addField('blog_image', 'image', array( 'name' => 'blog_image', 'label' => $this->__('图片'), 'title' => $this->__('图片'), 'note' => $this->__('上传新闻列表或其他地方会用到的图片'), )); 。。。。。。。。。。。。。。
打开AW_Blog_Manage_BlogController文件,在saveAction里添加处理文件上传的代码
if ($data = $this->getRequest()->getPost()) { //上传图片 if(isset($_FILES['blog_image']['name']) and (file_exists($_FILES['blog_image']['tmp_name']))) { try { $uploader = new Varien_File_Uploader('blog_image'); $uploader->setAllowedExtensions(array('jpg','jpeg','gif','png')); // or pdf or anything $uploader->setAllowRenameFiles(true); $uploader->setFilesDispersion(false); $path = Mage::getBaseDir('media') . DS ; $uploader->save($path, $_FILES['blog_image']['name']); $data['blog_image'] = $uploader->getUploadedFileName(); }catch(Exception $e) { } }else{ if(isset($data['blog_image']['delete']) && $data['blog_image']['delete'] == 1) $data['blog_image'] = ''; else unset($data['blog_image']); } 。。。。。。。。。。。。当然还有一个最重要的,就是在数据库的aw_blog表中新增一个字段来保存图片的路径
后台显示效果如下:
前台在模板文件中调用该图片的方式,在适当的位置加入类似下面的代码:
<img src="<?php echo $this->getUrl('media').$post->getBlogImage();?>">
补丁下载链接:http://www.kuaipan.cn/file/id_5552585259880364.html
PS:补丁里只包含几个php文件,数据库字段的话要自己添加,容许我偷懒下吧
相关文章推荐
- 增强AW_Blog插件之后台文章列表添加分类栏
- WordPress中给文章添加自定义字段及后台编辑功能区域
- 百度编辑器UEEDITOR使用简单介绍 UEditor表单提交和后台交互详解 最后更新对应的版本:1.2.5.1 教程描述: 富文本编辑器的使用开发中,表单提交有多种场景,编辑器初始化有新增文章和编辑
- WordPress中给文章添加自定义字段及后台编辑功能区域
- 后台文章编辑下载远程图片为本地图片
- dede5.7织梦后台广告插件增加图片上传功能
- 将文件、图片等写入MySql数据库或者从MySql数据库读出(保存文件字段为blog类型)
- jQuery插件——x-editable表单字段实时编辑)——编辑框的位置
- jquery 弹出层插件FancyBox弹出层演示支持图片、文章内容、flash swf弹出层等
- ASP.NET Web 新增 编辑时 多字段取值 解决方案
- Ext grid 编辑某行,不从后台重新加载,只更新部分字段显示
- magento Block缓存实例-给AW_Blog插件添加缓存
- phpcms后台发表文章时候添加新的字段
- 5ucms后台新增字段
- 图片放大编辑的jQuery插件
- WordPress 前端投稿/编辑发表文章插件 DJD Site Post(支持游客和已注册用户)汉化版 免费下载
- JSP(SSH)表单上传图片以及文本内容到后台保存,上传带图片的文章新闻等
- 后台撰写、编辑文章操作技巧
- discuz编辑栏可以显示图片,查看文章时不显示图片
- ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例