在新西兰的Massey University和University of Waikato的DSpace存储库中,有一些按钮可以与Twitter,Facebook和其他社交媒体共享存储库中文档的链接。
这两个网站都有一个带Twitter推文的窗口
我希望你们中的某个人想要解释如何将这两种功能添加到DSpace Mirage 2主题中。
答案 0 :(得分:3)
我们在我们的DSpace安装中使用addThis服务:http://www.addthis.com/
该服务允许您自定义网站的共享选项。
对于Mirage2,我们将以下javascript添加到Mirage2 / xsl / core / page-structure.xsl以将服务添加到我们的网站。该链接将包含您配置的唯一ID。
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=..."></script>
我们还为Mirage2 / styles / _style.scss
添加了一些自定义CSS.container {
padding-left: 50px;
padding-right: 50px;
}
您可以在我们的存储库网站上预览:https://repository.library.georgetown.edu/
答案 1 :(得分:2)
terrywb的答案涵盖了分享按钮方面 - 这正是彼得所链接的怀卡托大学的资料库所使用的服务。我们在navigation.xsl中添加了JavaScript而不是page-structure.xsl,我们还添加了
<div class="addthis_sharing_toolbox list-group" style="min-height:37.5px"></div>
在#ds-options
div的开始标记之后,与AddThis嵌入指令一致。
关于主页上的推文,请参阅Twitter embedded timeline instructions。我相信我们通过news-xmlui.xml添加一个占位符div,然后在theme.xsl中触发一个模板,该模板引入JavaScript并生成所需的a
元素 - 下面的示例来自Twitter文档。
<a class="twitter-timeline"
href="https://twitter.com/TwitterDev"
data-width="300"
data-height="300">
Tweets by @TwitterDev
</a>
答案 2 :(得分:2)
如果您想避免像AddThis这样的服务跟踪您的用户或只是想保持简单,您可以使用简单的共享链接。添加到dspace-xmlui-mirage2/src/main/webapp/xsl/aspect/artifactbrowser/item-view.xsl
此模板:
<xsl:template name="share-section">
<div class="item-page-field-wrapper table hidden-print">
<h5><i18n:text>xmlui.mirage2.itemSummaryView.ShareSection</i18n:text></h5>
<xsl:variable name="url">
<xsl:value-of select="encoder:encode(confman:getProperty('dspace.baseUrl'))" />
<xsl:value-of select="encoder:encode('/handle/')" />
<xsl:value-of select="encoder:encode(substring-after(/mets:METS/@OBJID,'handle/'))" />
</xsl:variable>
<a target="_blank" i18n:attr="title" title="xmlui.export.mendeley"
href="http://www.mendeley.com/import/?url={$url}">
<img src="{concat($theme-path,'/images/mendeley.png')}"
i18n:attr="alt" alt="xmlui.export.mendeley" />
</a>
<a class="social-network-icon twitter"
href="http://twitter.com/home/?status={$url}"
title="Share on Twitter" target="_blank"></a>
<a class="social-network-icon facebook"
href="http://www.facebook.com/sharer.php?u={$url}"
title="Share on Facebook" target="_blank"></a>
</div>
</xsl:template>
Here您可以找到更多其他社交网络的分享链接。
然后,您必须从您希望它出现的位置调用模板。例如,我们将其添加到项目元数据的第一列,位于同一文件的<xsl:template match="dim:dim" mode="itemSummaryView-DIM">
模板中。
我们从Expando获得了图标(与社交网络共享的另一种选择,以及它的免费软件)。这个CSS用于显示图标:
.social-network-icon {
background-image: url("../images/social-networks-icons.png");
background-repeat: no-repeat;
background-origin: 0;
display: inline-block;
height: 16px;
margin-left: 4px;
vertical-align: middle;
width: 16px;
}
.social-network-icon.facebook {
background-position: -0*16px 0;
}
.social-network-icon.google-plus {
background-position: -2*16px 0;
}