一步步做个widgets 基础篇

首先建立一个目录plugins/widgets/helloword 这个就是新的挂件目录,系统的每个widgets都是一个目录

里面放两个文件:

widgets.php:

<?php

$setting['author']='我'; //挂件作者

$setting['name']='Helloword'; //挂件名称

$setting['version']='0.0.1'; //挂件版本

$setting['catalog']='我的原创'; //挂件目录

$setting['description'] = '这是我自己的helloword板块'; //挂件描述

?>

default.html:

<h1>HelloWorld</h1><br />

这时目录看起来这个样子:

我们到后台可视化模板编辑里面添加板块。

保存,前台就能看到了

添加一个输入框

下面我们来改进这个板块:在后台输入一串文字,在前台显示出来。

增加一个配置文件_config.html 这个文件名是定死的,只要存在这个文件,那么就会把这个文件内容放到后台的版块编辑里面

_config.html

输入我的文字:
<input type="text" value="<{$setting.string_1}>" name="string_1" />

注意:这个输入框的value在这里设置的是<{$setting. string_1}> , 这样在版块编辑的时候,才会作为把你上次填的文字放在输入框里我们在这里做的每个input/select元素,都会作为$setting这个变量的一部分

编辑的时候就是这个样子:

下面把输入的字符串在前台显示出来:修改default.html

<h1>Hello:<{$setting.string_1}></h1>

这时前台的样子:

加入控制程序

再在这个目录下添加一个 widgets_helloword.php,这里的文件和php函数,要用widget_ + 目录的名字(helloword)命名

widget_helloword.php

<?php

function widget_helloword(&$setting,&$system){

    return '<b style="color:red">'.$setting['string_1'].'</b>';

}

?>

下面修改default.html,让他输出通过php修改过的文字。只要把<{$setting.string_1}> 改成<{$data}>即可。

default.html

<h1>Hello:<{$data}></h1>

写到这里发现写错字了,helloword... 只好继续"你好单词"下去...

前台表现:

一步步做个widgets 实战篇

很多人做挂件的动机一般都是看到一个比较好效果或者是对官方提供的功能进行更深入的修改。比如看到了一个很好的效果,想把他用到自己的网店上,同时也可以在后台维护,下面的一个效果挂件,就是出于这样的一个动机来制作的。

原始的效果:http://www.stoutlabs.com/demos/slider_class/ 感觉这个带有数字控制的滑动的效果还是不错,想把它改成的ShopEx的挂件,只要店主在后台设置了图片的路径和这个图片上的链接就可以实现这个广告效果。

下面的图帮你来温习一下挂件的制作基础。

首先要想清楚,挂件里面有些什么东西是需要店主设置的: 1、图片的路径,这个当然需要店主自己改了,否则就不能自己添加广告了。 2、点击图片所链接的地址,这个也是必须的。 3、每一个图片停留的时间,是让浏览者看3秒还是看5秒,这个也是需要店主自定义的 4、图片滑动的时间,就是从一张图片向另外一张图片切换的时候所需要的时间。 5、数字的颜色和背景,因为是带有数字的,所以就有当前的图片的数字和非当前的图片数字,这两个地方的颜色都需要用户可以设定的。

然后看看,上面看到的那个效果的HTML和js是不是支持上面所理想中设定,当然,这个地方需要你了解一些js了。看了一下这个效果整个的js和HTML结构,ok,没有问题,都是可以支持的。把这些定下来以后,就可以去制作_config.html了。

制作_config.htm文件的时候,可以直接从一个类似的官方挂件中复制一个过来,这样有些现在的html和js都是可以使用。比如从exchangeeffect这个挂件中把_config文件复制过来。现在还是对这个文件动手了。在制作_config.htm的时候,也不需要考虑太多,凡是需要店主定义的地方,统统写成 <{$setting.XXXXX}>的格式。

制作好_config.htm以后,在后台插入这个挂件的时候,就可以看到大概的样子了。

然后接下来制作default.html,这个就是这个挂件的主区域。按部就班的把js和html调整好,保证在静态页面的情况下(就是没有嵌入到ShopEx系统中),可以正常使用。

上面的步骤全部做好以后,就可以使用这个挂件了,简单的预览如下:

【shopex】添加网页挂件widgets的更多相关文章

  1. tomcat部署-手动启动tomcat部署,添加网页,

    公司的内网什么都不能往外传,于是自己用公司的网络搭了一个网页,在网上抄了一堆upload,用来来回传输数据.... 但是每次用ideaJ启动服务器太费时. 研究了一下怎么手动启动tomcat,部署网页 ...

  2. live2d添加网页看板娘

    最近逛博客,发现好多博主都加了网页看板娘,简直可爱到血槽空了,赶紧学习模仿改造了一下~ 给博客园的博客也添加了看板娘!!就在右边~喜欢的请打赏我~ 不过因为移植过来比较复杂,就不出教程啦~记得多来调教 ...

  3. iOS WKWebView添加网页加载进度条(转)

    一.效果展示 WKWebProgressViewDemo.gif 二.主要步骤 1.添加UIProgressView属性 @property (nonatomic, strong) WKWebView ...

  4. 在一个Activity里面的TextView上面添加网页链接,启动后到另一个Activity里面!

    可以添加很多的属性,样式或者是什么的,目前要完成的功能是 点击TextView里面的某个文字链接,进入另外一个Activity里面!例如你可以做微博里面的 @XXX: 点击后进入他的个人主页! 下面都 ...

  5. 使用poi将excel转换为html,适用本身有导出excel的而现在需要添加网页打印的功能

    PoiExcelToHtmlUtil.java import org.apache.poi.POIXMLDocumentPart; import org.apache.poi.hssf.usermod ...

  6. HTML5 标签audio添加网页背景音乐代码

    <head> <meta http-equiv="Content-Type" name="viewport" content="wi ...

  7. 添加网页ico

    <link rel="Shortcut Icon" href="/favicon.ico" />

  8. 如何添加网页QQ在线组件

    免费开通QQ推广服务 复制代码到你想要展示的位置 粘贴,完成.

  9. ecmall 如何新增挂件

    不知到该怎么开始介绍,就直接说了,比如要在商城首页上添加一个自己开发测试用的挂件 1.找到模版文件夹的index.html,路径:themes/mall/default/index.html 自己选一 ...

随机推荐

  1. mathjax符号

    mathjax公式 \(\delta\): \delta \(\Delta\): \Delta \(\int\): \int \(\iint\): \iint \(\approx\): \approx ...

  2. c# 的默认访问修饰符(转)

    c# 的访问修饰符是private 还是 internal? 准确的说,不能一概而论. 类(class)或结构(struct)如果不是在其它类或结构中的话,它的访问类型要不就是internal, 要不 ...

  3. Swift-数组

    1.数组的定义  //OC 使用[]定义数组,Swift一样,但是没有@ //自动推导的结果[String]->表示数组中存的都是String //跟OC中的数组指定泛型类型  //Swift ...

  4. mysql关键字执行顺序

    from on join where group by having select distinct union order by 昨天去58面试,之前的java基础和数据结构算法之类的都还可以,最后 ...

  5. 基于vue-cli 将webpack3 升级到 webpack4 配置

       升级webpack4前 先删除之前的webpack, babel-loader  下载 webpack npm i -D webpack@4 webpack-cli@3 webpack-dev- ...

  6. 1像素border

    1像素border 利用伪类和媒体查询: 伪类: border-1px($color) position:relative &:after display: block position: a ...

  7. ChromiumFX

    序言 开发C#桌面应用程序有很多选择,比如WinForm或WPF. 这里我们用ChromiumFX. 目录 一.Centos7 从零编译Nginx+PHP+MySql 二.Centos7 从零配置Ng ...

  8. 悟空crm-0.5.4 (OpenLogic CentOS7.2)

    平台: CentOS 类型: 虚拟机镜像 软件包: 5kcrm0.5.4 centos7.2 lamp stack 5.6.22 commercial crm lamp 服务优惠价: 按服务商许可协议 ...

  9. 监控系统-mod-gearman

    doc http://labs.consol.de/nagios/mod-gearman/ 安装 yum -y install gearmand-server-0.33-2.rhel6.x86_64. ...

  10. Excel汇总多个页卡数据到一个页卡

    首先新建一个页卡放到最前面,页卡处右键,选择查看代码,选择需要汇总的页卡,输入以下代码,运行即可: 1.如果需要把全部数据都汇总到一个页卡 Sub 合并当前工作簿下的所有工作表() Applicati ...