`

在详情页面添加分享按钮

 
阅读更多

当前theme为bartik

\themes\bartik\templates  下 node.tpl.php

<?php

/**
 * @file
 * Bartik's theme implementation to display a node.
 *
 * Available variables:
 * - $title: the (sanitized) title of the node.
 * - $content: An array of node items. Use render($content) to print them all,
 *   or print a subset such as render($content['field_example']). Use
 *   hide($content['field_example']) to temporarily suppress the printing of a
 *   given element.
 * - $user_picture: The node author's picture from user-picture.tpl.php.
 * - $date: Formatted creation date. Preprocess functions can reformat it by
 *   calling format_date() with the desired parameters on the $created variable.
 * - $name: Themed username of node author output from theme_username().
 * - $node_url: Direct URL of the current node.
 * - $display_submitted: Whether submission information should be displayed.
 * - $submitted: Submission information created from $name and $date during
 *   template_preprocess_node().
 * - $classes: String of classes that can be used to style contextually through
 *   CSS. It can be manipulated through the variable $classes_array from
 *   preprocess functions. The default values can be one or more of the
 *   following:
 *   - node: The current template type; for example, "theming hook".
 *   - node-[type]: The current node type. For example, if the node is a
 *     "Blog entry" it would result in "node-blog". Note that the machine
 *     name will often be in a short form of the human readable label.
 *   - node-teaser: Nodes in teaser form.
 *   - node-preview: Nodes in preview mode.
 *   The following are controlled through the node publishing options.
 *   - node-promoted: Nodes promoted to the front page.
 *   - node-sticky: Nodes ordered above other non-sticky nodes in teaser
 *     listings.
 *   - node-unpublished: Unpublished nodes visible only to administrators.
 * - $title_prefix (array): An array containing additional output populated by
 *   modules, intended to be displayed in front of the main title tag that
 *   appears in the template.
 * - $title_suffix (array): An array containing additional output populated by
 *   modules, intended to be displayed after the main title tag that appears in
 *   the template.
 *
 * Other variables:
 * - $node: Full node object. Contains data that may not be safe.
 * - $type: Node type; for example, story, page, blog, etc.
 * - $comment_count: Number of comments attached to the node.
 * - $uid: User ID of the node author.
 * - $created: Time the node was published formatted in Unix timestamp.
 * - $classes_array: Array of html class attribute values. It is flattened
 *   into a string within the variable $classes.
 * - $zebra: Outputs either "even" or "odd". Useful for zebra striping in
 *   teaser listings.
 * - $id: Position of the node. Increments each time it's output.
 *
 * Node status variables:
 * - $view_mode: View mode; for example, "full", "teaser".
 * - $teaser: Flag for the teaser state (shortcut for $view_mode == 'teaser').
 * - $page: Flag for the full page state.
 * - $promote: Flag for front page promotion state.
 * - $sticky: Flags for sticky post setting.
 * - $status: Flag for published status.
 * - $comment: State of comment settings for the node.
 * - $readmore: Flags true if the teaser content of the node cannot hold the
 *   main body content.
 * - $is_front: Flags true when presented in the front page.
 * - $logged_in: Flags true when the current user is a logged-in member.
 * - $is_admin: Flags true when the current user is an administrator.
 *
 * Field variables: for each field instance attached to the node a corresponding
 * variable is defined; for example, $node->body becomes $body. When needing to
 * access a field's raw values, developers/themers are strongly encouraged to
 * use these variables. Otherwise they will have to explicitly specify the
 * desired field language; for example, $node->body['en'], thus overriding any
 * language negotiation rule that was previously applied.
 *
 * @see template_preprocess()
 * @see template_preprocess_node()
 * @see template_process()
 */
?>
<div id="node-<?php print $node->nid; ?>" class="<?php print $classes; ?> clearfix"<?php print $attributes; ?>>

  <?php print render($title_prefix); ?>
  <?php if (!$page): ?>
    <h2<?php print $title_attributes; ?>>
      <a href="<?php print $node_url; ?>"><?php print $title; ?></a>
    </h2>
  <?php endif; ?>
  <?php print render($title_suffix); ?>

  <?php if ($display_submitted): ?>
    <div class="meta submitted">
      <?php print $user_picture; ?>
      <?php print $submitted; ?>
    </div>
  <?php endif; ?>

  <div class="content clearfix"<?php print $content_attributes; ?>>
    <?php
      // We hide the comments and links now so that we can render them later.
      hide($content['comments']);
      hide($content['links']);
      print render($content);
    ?>

<!-- 添加这个判断,是为了防止分享出现在摘要模式上, -->
<?php if ($page): ?>
<!-- Baidu Button BEGIN -->
<div id="bdshare" class="bdshare_t bds_tools get-codes-bdshare">
<a class="bds_tsina"></a>
<a class="bds_qzone"></a>
<a class="bds_tqq"></a>
<a class="bds_renren"></a>
<a class="bds_t163"></a>
<a class="bds_tuita"></a>
<a class="bds_share189"></a>
<a class="bds_tqf"></a>
<a class="bds_tieba"></a>
<span class="bds_more">更多</span>
<a class="shareCount"></a>
</div>
<div class="clearfix"></div> <!--防止后面的内容紧跟分享的按钮  -->
<script type="text/javascript" id="bdshare_js" data="type=tools&amp;uid=0" ></script>
<script type="text/javascript" id="bdshell_js"></script>
<script type="text/javascript">
document.getElementById("bdshell_js").src = "http://bdimg.share.baidu.com/static/js/shell_v2.js?cdnversion=" + Math.ceil(new Date()/3600000)
</script>
<!-- Baidu Button END -->
<?php endif; ?>
  </div>

  <?php
    // Remove the "Add new comment" link on the teaser page or if the comment
    // form is being displayed on the same page.
    if ($teaser || !empty($content['comments']['comment_form'])) {
      unset($content['links']['comment']['#links']['comment-add']);
    }
    // Only display the wrapper div if there are links.
    $links = render($content['links']);
    if ($links):
  ?>
    <div class="link-wrapper">
      <?php print $links; ?>
    </div>
  <?php endif; ?>

  <?php print render($content['comments']); ?>

</div>

 

分享到:
评论

相关推荐

    各种微博分享按钮代码(转载)

    这篇博客文章“各种微博分享按钮代码(转载)”主要介绍了如何在网站上集成这些分享功能,以便用户一键将网页内容分享到他们的微博账户。 在网页开发中,微博分享按钮的实现通常涉及HTML、CSS以及JavaScript技术。...

    jQ鼠标悬停遮罩显示分享按钮.zip

    在本项目中,“jQ鼠标悬停遮罩显示分享按钮.zip”是一个包含了JavaScript特效的压缩文件,主要用于实现一种类似于Pinterest的“Pin It”功能。Pinterest是一个知名的社交媒体平台,用户可以通过“Pin It”按钮将喜欢...

    web网页的分享按钮和源码

    在构建Web网页时,添加分享按钮是提升用户体验和增加内容传播的有效方式。这些按钮通常连接到社交媒体平台,如微博、QQ等,使用户能够轻松地将网页内容分享到他们的社交网络。本文将深入探讨如何在PHP环境下实现这些...

    jQuery网页弹出层分享按钮插件

    选择器用于找到页面上需要添加分享按钮的元素,而事件处理则负责在用户交互时触发弹出层的显示。例如,可以使用`$(document).ready()`来确保页面加载完成后才执行相关代码,然后使用`$('selector').click(function()...

    h5页面百度分享sdk,可分享到QQ,微信,微博

    通过调用SDK提供的API,我们可以轻松地实现在网页上添加分享按钮,并自定义分享的内容和样式。 集成百度分享SDK的步骤通常包括以下几个部分: 1. **引入SDK**:在HTML文件中,通过`&lt;script&gt;`标签引入百度分享的...

    微薄,博客,论坛,浮动分享,收藏按钮代码

    4. **浮动分享按钮**:这种设计通常是固定在页面的一侧,无论用户滚动到页面的哪个位置都能看到。浮动分享按钮既不干扰主要内容,又能保持分享功能的可见性,提高分享率。设计时要注意按钮的样式和位置,确保既美观...

    鼠标悬浮遮罩显示分享按钮

    此功能通过为网页中的元素(如图片)添加一层透明遮罩,并在鼠标悬浮时显示一个分享按钮,从而让用户可以轻松地将当前页面或特定元素分享至Pinterest等社交平台。 #### 二、关键技术与实现原理 ##### 2.1 HTML5与...

    首途模板HTTPS域名添加百度QQ朋友圈分享按钮.zip

    5. **测试和调试**:在部署更改后,进行全面测试,确保分享按钮在各种浏览器和设备上都能正常工作,并且分享的内容在QQ和百度平台上显示无误。 通过以上步骤,你就能成功地在HTTPS的苹果CMS网站上添加百度和QQ的...

    jQuery可拖拽的弹性分享按钮菜单

    本文将详细探讨"jQuery可拖拽的弹性分享按钮菜单"这一主题,以及与之相关的jQuery和拖拽功能的知识点。 首先,jQuery的拖拽功能通常通过插件实现,例如"jQuery UI"库就提供了强大的拖放(drag-and-drop)功能。...

    jquery css3手机端点击遮罩弹出分享按钮代码

    在这个项目中,CSS3被用来创建遮罩层的半透明效果,以及平滑的动画效果,使得分享按钮的弹出和消失更加自然。例如,可以使用`transition`属性来定义元素在不同状态间的转换效果,`animation`则可以定义更复杂的动画...

    js+css3全屏折角导航菜单和右下角悬浮分享按钮特效

    在本文中,我们将深入探讨如何使用JavaScript(js)和CSS3技术来创建一款创新的全屏折角导航菜单以及右下角悬浮分享按钮的特效。这个特效为网站增添了一种现代且互动的用户体验,使用户能够更直观地探索网页内容。 ...

    jQuery右侧悬浮返回顶部和分享按钮代码

    这个代码示例包含了一个微博分享按钮,可能通过调用微博API实现。在HTML中,你需要创建一个链接或按钮元素,然后在JavaScript中处理点击事件,触发分享操作。 例如: ```html ;" id="weibo-share"&gt;分享到微博 ``` ...

    如何在图片添加收藏和分享代码

    2. **编辑图片**:使用如Photoshop等图片编辑工具打开该图片,并在其上添加分享按钮或者图标。 3. **嵌入分享链接**:将分享链接嵌入到图片中,通常是在分享按钮或图标的点击事件中设置链接地址。 4. **测试分享功能...

    css3悬停滑动分享按钮动画特效

    通过添加CSS3动画,可以使分享按钮在用户悬停时更显眼,从而提高分享的概率。 现在,让我们具体看下如何实现这个特效。首先,我们需要创建一个HTML结构,包含分享按钮的元素。例如: ```html 分享 ``` 然后,在...

    ios-自定义分享页面.zip

    3. **事件监听与处理**:为每个分享按钮添加点击事件监听器,当用户点击分享按钮时,调用ShareSDK提供的分享接口,传递要分享的内容(如文本、图片、链接等)。 4. **分享回调处理**: ShareSDK提供了分享结果的回...

    自定义封装分享页面弹框

    可以使用Social框架或者第三方库如ShareKit、SwiftShareBubbles等来处理实际的分享逻辑,将分享按钮的点击事件与分享动作关联起来。 总结,自定义封装分享页面弹框主要涉及Xib的使用、UI设计、类的封装以及事件处理...

    jQuery国外分享按钮弹出层

    综上所述,"jQuery国外分享按钮弹出层"是一个结合了jQuery、HTML和CSS的网页组件,通过优雅的方式实现了在网页中快速分享内容到多个国外社交网络的功能。通过合理的布局和交互设计,它可以提升网站的用户参与度和...

    CSS3多样式小图标按钮 带分享按钮.zip

    1. **伪类选择器**:`:hover`, `:active` 和 `:focus` 可以用来改变按钮在不同状态下的样式,提供更好的用户体验。例如,当用户将鼠标悬停在按钮上时,`:hover` 可以使按钮背景色变化或添加阴影效果。 2. **边框...

    jquery点击弹出可分享的按钮效果

    这通常涉及在HTML中添加特定的分享按钮,并在JavaScript中配置相应的URL和参数。 8. **响应式设计**:确保按钮和弹出框在不同设备和屏幕尺寸下都能正常工作,需要进行响应式设计。可以利用媒体查询(`@media`)来...

    网页分享插件,可以实现微信、QQ、微博分享

    3. 添加分享按钮:在网页的DOM结构中添加分享按钮,可以是自定义的样式,点击时触发分享功能。 4. 监听事件:绑定按钮的点击事件,调用插件提供的API来触发分享动作。 5. 实例化并使用插件:根据插件文档提供的...

Global site tag (gtag.js) - Google Analytics