2013-07-30 69 views
0

我想更改Plone徽标视图中的链接。默认情况下,它指向Plone站点的根目录,我想将它指向一个不在Plone站点内的位置。如何将徽标链接到外部网站?

我试过写一个自定义的logo viewlet,但是对于这么小的改变,这看起来很复杂。做这个的最好方式是什么?

+1

恩,你有42K的代表点,你应该知道如何正确地问一个问题吧? –

+0

@STTLCU:是的,这是一个合适的问题。事实上,这是一个不知道它的人的例子,我很快也会提供答案。请参阅:http://stackoverflow.com/questions/17939512/create-an-instance-of-one-class-from-another-class –

+0

好吧,然后,我已经删除了-1。 –

回答

2

更改徽标链接的最简单方法是覆盖徽标视图模板。这最好用z3c.jbot完成。

您需要z3c.jbot添加到您的项目定制产品,通过在setup.py将其作为一个依赖,同时还成立了configure.zcml中正确:

<include package="z3c.jbot" file="meta.zcml" /> 

<browser:jbot 
    directory="templates" /> 

不要忘记,以确保您在<zcml>标记中添加了浏览器前缀。

您现在可以将logo.pt文件从plone.app.layout复制到您的自定义产品中的templates目录。该文件重命名为plone.app.layout.viewlets.logo.pt和改变:

tal:attributes="href view/navigation_root_url; 
       title view/navigation_root_title" 

要:

href="http://stackoverflow.com" 

重新启动服务器,现在的标志链接已更改。