从扩展Plone内容作为视图、页眉、标志、页脚等提供上下文相关图像和标记。
项目描述
collective.contextimage
提供特定上下文图像和标记的扩展字段。这些元素可以用作布局元素。如果当前上下文没有提供特定上下文相关字段,则从其父字段中获取。
它很有用,例如。
如果您想在不同部分的网站上使用不同的徽标或页眉背景,
如果您想为内容设置背景图片,
如果您想在页面中使用视图小部件放置图片。
提供单独的模式扩展器,与不同配置文件加载的browserlayers绑定的相应渲染器。这样,只需启用几个功能之一即可。
- 视图小部件上下文图片
视图小部件作为img标签渲染的图片。配置文件是profile-collective.contextimage:viewlet。
- 页眉上下文图片
作为门户页眉背景渲染的图片。配置文件是profile-collective.contextimage:header。
- 页面上下文图片
作为页面背景渲染的图片。配置文件是profile-collective.contextimage:page。
- 徽标上下文图片
作为门户徽标渲染的图片。这是对徽标小部件的替换,默认使用默认徽标)。配置文件是profile-collective.contextimage:logo。
- 页脚视图小部件
可以作为门户页脚显示的富文本。配置文件是profile-collective.contextimage:footer。
安装
只需在您的buildout上依赖egg collective.conteximage。ZCML会自动通过z3c.autoinclude加载。
在Plone控制面板或portal_setup中将它安装为附加组件。
此包是为Plone 4.1或更高版本编写的。
您需要通过应用标记接口通过ZCML启用上下文图像扩展。例如,如果所有扩展都应潜在地对所有Products.Archetypes.BaseObject.BaseObject派生类型可用,请添加以下内容到您的configure.zcml
<class class="Products.Archetypes.BaseObject.BaseObject"> <implements interface="collective.contextimage.interfaces.IPageImageExtensible" /> <implements interface="collective.contextimage.interfaces.IHeaderImageExtensible" /> <implements interface="collective.contextimage.interfaces.IViewletImageExtensible" /> <implements interface="collective.contextimage.interfaces.ILogoImageExtensible" /> <implements interface="collective.contextimage.interfaces.IFooterExtensible" /> </class>
现在可以通过导入引用的GenericSetup配置文件激活每个功能。
例如,如果需要页面背景和页眉图片支持,请将以下内容添加到集成GS配置文件metadata.xml
<?xml version="1.0"?> <metadata> <version>1</version> <dependencies> <dependency>profile-collective.contextimage:page</dependency> <dependency>profile-collective.contextimage:header</dependency> </dependencies> </metadata>
您也可以通过转到/portal_setup来安装配置文件。
故障排除
如果您尝试使用与主题/skins文件夹中的图片相同名称的图片,可能会遇到错误。因此:如果您的主题使用名为‘logo.png’的图片,您可能无法使用‘logo.png’作为上下文图片(在上传之前将其重命名)。
源代码和贡献
如果您想帮助开发(改进、更新、错误修复等)collective.contextimage,这是一个很好的想法!
代码位于github collective。
您可以通过克隆它或访问github-collective并在项目上直接工作。
维护者是Robert Niederreiter和BlueDynamics Alliance开发团队。我们欢迎任何贡献,如果需要在pypi上发布版本,请联系我们之一dev@bluedynamics dot com
贡献者
Robert Niederreiter <rnix@squarewave.at>
Jens W. Klein <jens@bluedynamics.com>
Espen Moe-Nilssen <espen@medialog.no>
历史
1.3.2 (2015-05-29)
始终相对于导航URL提供默认图片资源[jensens]
1.3.1
使用zope.interface.implementer和zope.component.adapter代替zope.interface.implements和zope.component.adapts。[rnix]
在基本扩展器中返回原始顺序[rnix]
1.3
为每个模式扩展器添加权限,并使扩展字段可编辑,以便管理员和网站管理员[rmix]
1.2.1
显示页脚的条件[espen]
1.2
上下文图像扩展功能的可用性现在由标记接口控制。[rnix]
1.1.1
清理视图。[rnix]
为页脚视图添加文档。[rnix]
CSS 视图可以定义 媒体。[rnix]
1.1
‘设置’模式中所有 Extender 字段。[rnix]
添加了上下文页脚。[espen]
1.0.1
在添加更多文档后发布。[jensens]
0.5
添加了门户标志的替换。[jensens]
改进了 setup.py 等文件。[jensens]
0.4
为门户背景、页眉背景和视图添加了单独的上下文图像。[rnix]
0.3
添加了使用上下文图像作为页眉背景的视图。[rnix]
0.2
错误。[rnix]
0.1
初始。[rnix]
许可证
版权所有(c)2011-2015,BlueDynamics Alliance,奥地利,瑞士,德国
GNU 通用公共许可证
复制、分发和修改的条款和条件
本许可证适用于任何包含版权所有者放置的通知,表明它可以在本通用公共许可证的条款下分发的程序或其他作品。以下“程序”指任何此类程序或作品,“基于程序的著作”指程序或任何受版权法保护的衍生作品:也就是说,包含程序或其一部分的著作,无论是原样还是经过修改和/或翻译成另一种语言的。 (以下,翻译包括在“修改”一词中,不受限制。)每个许可证持有人均称为“你”。
本许可证不涵盖复制、分发和修改以外的活动;它们超出其范围。运行程序的行为不受限制,只有当程序的内容构成基于程序的著作(独立于通过运行程序制作)时,程序输出的内容才受本许可证的保护。这究竟是否正确取决于程序的行为。
你可以按你接收程序源代码的方式,在任何媒介上复制和分发程序源代码的准确副本,只要你在每个副本上明显和适当地公布适当的版权声明和免责声明;保持所有提及本许可证和缺乏任何保证的通知完整;并向程序的其他接收者提供本许可证的副本以及程序。
你可以为转移副本的实际行为收取费用,你也可以选择在收费的基础上提供保证。
你可以修改你的程序副本或副本的任何部分,从而形成一个基于程序的著作,并根据上文第1节的规定复制和分发这样的修改或著作,只要你也满足以下所有条件
a) 你必须使修改的文件明显标明你更改了文件,并注明任何更改的日期。
b) 你必须使你分发或出版的任何作品(全部或部分包含或派生自程序或其任何部分),作为一个整体在没有任何费用的条件下,根据本许可证的条款许可所有第三方。
c) 如果修改后的程序在运行时通常交互式地读取命令,你必须使它在以最普通的方式启动用于此类交互式使用时,打印或显示一个公告,包括适当的版权声明和一个声明(或者,如果你提供保证,则说你有保证),即用户可以按照这些条件重新分发程序,并告知用户如何查看本许可证的副本。(例外:如果程序本身是交互式的但不通常打印此类公告,你的基于程序的著作不需要打印公告。)
这些要求适用于整个修改后的作品。如果该作品的可识别部分不是从程序中派生的,并且可以合理地视为独立且独立的作品,那么当您将其作为独立作品分发时,本许可证及其条款不适用于这些部分。但是,当您将相同的部分作为基于程序的整个作品的一部分分发时,整个作品的分发必须遵守本许可证的条款,其许可权适用于整个作品,从而适用于每个部分,无论谁编写了它。
因此,本节的目的不是声称对您完全编写的作品的权利或争议您的权利;相反,目的是行使对基于程序派生或集体作品分发的控制权。
此外,仅将不基于程序的其他作品与程序(或与基于程序的作品)一起聚合到存储或分发介质的体积中,并不会使该其他作品受到本许可证的范围。
您可以在第1条和第2条的条款下以目标代码或可执行形式复制和分发程序(或根据第2节基于它的作品),前提是您还执行以下一项:
a) 伴随完整的相应机器可读源代码,这些源代码必须根据上述第1条和第2条的条款在通常用于软件交换的介质上分发;或者,
b) 伴随一个有效的书面提议,至少为三年,向任何第三方提供物理执行源分发所花费的成本不超过的完整机器可读源代码副本,以根据上述第1条和第2条的条款在通常用于软件交换的介质上分发;或者,
c) 伴随您收到的有关分发对应源代码的提议的信息。(此替代方案仅适用于非商业分发,并且仅当您根据上述b节收到的程序以目标代码或可执行形式与此类提议一起分发时才允许。)
作品源代码是指修改作品的优选形式。对于可执行作品,完整的源代码意味着包含的所有模块的源代码,加上任何相关的接口定义文件,加上用于控制编译和安装可执行文件的脚本。但是,作为特殊例外,分发的源代码不需要包括通常与操作系统的主组件(编译器、内核等)一起分发的任何内容(无论是源代码还是二进制形式),除非该组件本身与可执行文件一起分发。
如果通过提供从指定地点复制的方法分发可执行或目标代码,则提供从同一地点复制源代码的等效访问权视为分发源代码,即使第三方没有被强制与目标代码一起复制源代码。
您不得以本许可证明确规定的以外的方式复制、修改、再许可或分发程序。任何其他复制、修改、再许可或分发程序的尝试都是无效的,并将自动终止您根据本许可证的权利。然而,从您根据本许可证接收复制品或权利的各方,只要这些方保持完全遵守,其许可证不会终止。
您不需要接受此许可证,因为您尚未签署它。然而,没有其他许可授予您修改或分发程序或其衍生作品的权利。如果您不接受此许可证,这些行为将受到法律的禁止。因此,通过修改或分发程序(或基于程序的任何作品),您表明您接受此许可证以及关于复制、分发或修改程序或基于其的作品的所有条款和条件。
每次您重新分发程序(或基于程序的任何作品),接收者自动从原始许可方获得一份根据本条款和条件复制、分发或修改程序的许可。您不得对受让人行使本许可证项下授予的权利施加任何进一步的限制。您不对第三方遵守本许可证的行为负责。
如果由于法院判决、专利侵权指控或其他原因(不仅限于专利问题),对您施加的条件(无论是由法院命令、协议或其他方式)与本许可证的条件相矛盾,这并不免除您遵守本许可证的条件。如果您无法同时满足本许可证项下的义务和任何其他相关义务,那么作为后果,您可能根本不能分发程序。例如,如果专利许可不允许所有直接或间接通过您获得副本的人免费重新分发程序,那么您满足这两个条件的唯一方法就是完全停止分发程序。
如果在本节中的任何部分在任何特定情况下被认定为无效或不具有可执行性,本节剩余部分应适用,并且本节作为一个整体应在其他情况下适用。
本节的目的不是诱导您侵犯任何专利或其他财产权主张或质疑此类主张的有效性;本节的目的仅仅是保护自由软件分发系统的完整性,该系统是通过公共许可证实践实施的。许多人已经通过那个系统为广泛分布的软件做出了慷慨的贡献,依赖于该系统的一致应用;作者/捐赠者决定是否愿意通过任何其他系统分发软件,许可方不能强迫该选择。
本节旨在清楚地说明本许可证其余部分被认为的后果。
如果程序的分发和/或使用在特定国家受到专利或版权界面的限制,将程序置于本许可证下的原始版权所有者可以添加一个明确的地域性分发限制,排除那些国家,以便仅在或在该等国家之间允许分发。在这种情况下,本许可证将包含限制,就好像它是本许可证正文的一部分一样。
自由软件基金会可能会不时发布修订版和/或新的通用公共许可证版本。这些新版本将与当前版本精神相似,但在细节上可能会有所不同,以解决新问题或关注点。
每个版本都有一个区分的版本号。如果程序指定了本许可证的版本号,适用于它并“任何后续版本”,您可以选择遵循该版本或自由软件基金会发布的任何后续版本的条款和条件。如果程序没有指定本许可证的版本号,您可以选择自由软件基金会发布的任何版本。
如果您希望将程序的部分内容纳入其他具有不同分发条件的免费程序中,请联系作者请求许可。对于由自由软件基金会版权的软件,请联系自由软件基金会;我们有时会对此类情况作出例外。我们的决定将遵循两个目标:一是保护我们所有自由软件派生作品的自由状态,二是促进软件的共享和再利用。
无任何保证
由于本程序为免费许可,根据适用法律的规定,本程序不提供任何保证。除非以书面形式另有声明,版权所有者以及/或提供本程序的各方提供本程序“现状”且不提供任何类型的保证,包括但不限于明示或暗示的适销性和特定用途适用性保证。本程序的质量和性能的全部风险由您承担。如果本程序证明存在缺陷,您将承担所有必要的维修、修理或纠正的成本。
除非适用法律要求或书面同意,否则在任何情况下,任何版权所有者或任何可能根据上述许可修改和/或重新分发程序的第三方,对您不承担任何责任,包括但不限于因使用或无法使用本程序(包括但不限于数据丢失或数据被错误处理,或您或第三方遭受的损失,或本程序与其他程序无法协同工作)而产生的任何一般性、特殊性、偶然性或后果性损害,即使此类持有人或其他第三方已被告知此类损害的可能性。
条款和条件结束
项目详情
collective.contextimage-1.3.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 908c225322425b6134e3f1b2894b4f3ec4fab0ea6af4f24b95d0beeacce1710c |
|
MD5 | f14d24d5b1587c588ffdf48f15d1720f |
|
BLAKE2b-256 | 5c53778d145e85cb5ae55c70fe738c1070dc6f85d7d9b73ac8c27d70f7037608 |