论坛首页 Web前端技术论坛

扩展Roller共享主题功能

浏览 1231 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2011-12-31  

问题:Roller提供一个共享主题功能,如果很多人使用同一个共享主题,那么这个主题页面硬编码的东西(比如图片、公告等等)是不是都一样了?当然,如果是高级用户的话解决这个问题不是难题。

 

解决方法:将硬编码的内容初始化和参数化。比如图片的url等。在Ro2er中,已经开发了一个用户自定义参数功能,用户在此功能中设置的参数可以在页面通过$text.value("key")得到value。

 

另外,要初始化。当用户切换主题时,自动把主题相关的自定义参数化保存到参数表中,那么页面才能取得参数化。初始化在theme.xml中添加一些内容:

    <userparameter>
        <key>site.logo.url</key>
        <description>站点logo图片设置</description>
        <locale>zh_cn</locale>
        <value>http://images.xx.com/logo.png</value>
    </userparameter>

 

接口Theme增加一个获取用户参数列表;SharedThemeFromDir初始化的时候解析用户参数化;ThemeEdit用户切换主题时获取Theme用户参数化列表并保存到db中。

 

显示页面时$text.value("key")就可以得到默认的参数;用户需要修改则可以通过用户自定义参数功能来修改。

 

呵呵。

 

论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics