zoukankan      html  css  js  c++  java
  • sitecore中图片的“多语言”

    Sitecore本身可以很方便的对各类文字类型的数据进行多语言的管理,除了默认的英语以外,只需要在sitecore中增加一个语言,例如中文,那么所有在~/sitecore/content下的项都可以创建中文版本。

    这对文字类型的数据进行多语言的管理非常方便。但实际上,对于“数据”类的图片,我们也可以并且也应该进行“多语言”的管理。

    这里我对“数据”类的图片是指包含了“数据”的图片,为了和用以做布局的背景图一类的图片做区分。

    例如产品的照片里,出现不同的语言文字是很常有的;甚至针对不用语言地区的用户,产品的包装都是不同的。

    而sitecore的media library里上传图片,默认的类型是unversioned的,即不分版本的。这样的结果是:

    • 对于“同一张”图片的“不同版本”,我们需要上传多张图片,并且这些图片在media library中是多个项。例如同一产品的图片,英文版和中文版,是2个独立的项,互相之间没有联系。
    • 在我们编辑“产品”项的英文版时,我们引用了图片A(该产品图的英文版),而仍然是同样这个产品,在我们编辑中文版时,需要引用图片B(该产品图的中文版)。对同一个图片项需要进行多次引用。
    • 在产品图片很多的时候,media library中将出现非常多的图片,日渐难以管理。例如:Product_1_en.jpg, Product_1_cn.jpg, Product_2_en.jpg, Product_2_cn.jpg等等。

    解决的方法是,我们先在Media library中选择当前语言版本为英文,使用Upload Files(Advanced)上传一个产品的英文版图片,并且勾选"Make Uploaded Media Items Versionable",这样我们上传上的图片则是带有版本区分。成功后点击右上角的语言切换图标切换到中文版,再Attach一张该产品的中文图片即可。这样做的结果是:

    • “同一张”图片在Media library中只会出现一项,在多语言环境中极大的减少了项的数目。
    • 不同语言版本的图片有统一的关联。
    • 更大的好处是,我们只需要在“产品”项中链接一次该图片项,以后在我们切换产品项的语言版本时,图片会自动跟随着一起切换语言版本。 

  • 相关阅读:
    mac下的docker的Docker.raw占用空间很大?
    python模块uuid产生唯一id
    缓存溢出Buffer Overflow
    (原创)攻击方式学习之(3)
    JSP禁用缓存的方式 response.setHeader( "Pragma", "no-cache" ); setDateHeader("Expires", 0);
    Java框架安全
    Java Web:主动和被动方式检测安全的框架
    一.配置简单的嵌入式tomcat和jetty
    使用embeded tomcat进行嵌入式javaee开发-启动tomcat
    安全隐患,你对X-XSS-Protection头部字段理解可能有误
  • 原文地址:https://www.cnblogs.com/Elvin/p/2089226.html
Copyright © 2011-2022 走看看