定制 rezozero/social-links 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

rezozero/social-links

最新稳定版本:v2.0.0

Composer 安装命令:

composer require rezozero/social-links

包简介

Provide social network url for sharing.

README 文档

README

License Version

Examples using Font awesome and bootstrap

Usage

Install SocialLinks using Composer

composer require rezozero/social-links

Configure your SocialLinks instance with your data source and some output settings. Load fontawesome CSS (base, regular and brands minimum) files in your HTML page.

// Construct a new SocialLinks
$share = new \RZ\SocialLinks\SocialLinks(array(
    'url' => 'http://www.rezo-zero.com',
    'title' => 'REZO ZERO website homepage',
    // Optional image source url for pinterest. must be at least 200px by 200px, if you intent to use for facebook
    'imageUrl' => 'http://www.rezo-zero.com/templates/rezo-zero/img/apple-icon.png',
    // Optional status for overriding title for twitter, whatsapp and emails body
    'status' => 'Hey! Look at this awesome website.'
));

// Set link class prefix
$share->setClassPrefix('social-link');

// Set social icons class prefix
// Use fa for Font Awesome or an
// other for a custom icon set.
$share->setIconPrefix('fa');

// Optional:
// Set link additional classes, for example
// to add "btn" bootstrap classes.
$share->setLinkClasses('btn btn-default');

Single Url

echo $share->getUrl('twitter');

// https://twitter.com/intent/tweet?text=Hey%21%20Look%20at%20this%20awesome%20website.%20%E2%80%94%20http%3A%2F%2Fwww.rezo-zero.com

Single Link with icon

$share->setClassPrefix('social-link');
$share->setIconPrefix('fa');
echo $share->getLink('facebook', $share->getIcon('facebook'));

// <a class="social-link social-link-facebook" target="_blank" rel="nofollow" href="https://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fwww.rezo-zero.com"><i class="social-link-icon fa fa-brands fa-square-facebook"></i><span class="social-link-name">Facebook</span></a>

Single Link with SVG tag

$share->setClassPrefix('social-link');
$share->setIconPrefix('fa');
echo $share->getLink('facebook', $share->getUseSVG('facebook'));

// <a class="social-link social-link-facebook" target="_blank" rel="nofollow" href="https://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fwww.rezo-zero.com"><svg class="social-link-icon fa fa-brands fa-square-facebook"><use xlink:href="#fa-facebook"></use></svg><span class="social-link-name">Facebook</span></a>

A bunch of links with their icons

Without icons:

echo $share->getLinks(array('facebook', 'twitter', 'linked-in'));

With <i> icons:

echo $share->getLinksWithIcon(array('facebook', 'twitter', 'linked-in'));

With <svg> icons:

echo $share->getLinksWithSVG(array('facebook', 'twitter', 'linked-in'));

You also can choose a not empty separator, i.e. a dash:

echo $share->getLinksWithIcon(array('facebook', 'twitter', 'linked-in'), ' - ');

Available networks

  • delicious
  • digg
  • email
  • evernote
  • facebook (sharer by default, or /dialog/feed if you provide a facebookAppId), if you use default font-awesome icon prefix, icon class will be facebook-official. It’s still facebook for SVG icons or non font-awesome prefix.
  • friendfeed
  • google
  • google-plus
  • linked-in
  • newsvine
  • pinterest
  • pocket
  • reddit
  • scoop-it
  • slashdot
  • stumbleupon
  • tumblr
  • twitter
  • whatsapp

Twig extension

$twig->addExtension(new \RZ\SocialLinks\Twig\SocialLinksExtension());

SocialLinksExtension Twig extension introduces 3 new filters to be able to generate your social links without any PHP code.

  • social_links
  • icon_social_links
  • svg_social_links
  • tweet_links

First you’ll need to gather your social data in an associative array or simply set a string variable (it will be used as the URL).

{% set social_data = {
    'url': 'http://www.rezo-zero.com',
    'title': 'REZO ZERO website homepage',
} %}
{# or #}
{% set social_data = 'http://www.rezo-zero.com' %}

Then, you can use one of the 3 SocialLinks filters with or without optional arguments. Selected networks can be set using an array or a simple string.

<nav class="social-links">
    {{ social_data|social_links(['facebook', 'twitter']) }}
</nav>

<nav class="social-links">
    {{ social_data|social_links('twitter') }}
</nav>

<nav class="social-links">
    {{ social_data|icon_social_links(
        ['facebook', 'twitter'], 
        'icon-prefix', 
        'class-prefix', 
        'link-classes', 
        'Share on %s'
    ) }}
</nav>

Bonus: tweet_links is a Twig filter to parse your tweets contents.

Translate share action label

We introduced shareActionLabel argument to provide title for accessibility on your social links. You can override it in your own Twig template to change the title and translate it:

<nav class="social-links">
    {{ social_data|icon_social_links(
        ['facebook', 'twitter'], 
        'icon-prefix', 
        'class-prefix', 
        'link-classes', 
        ('share_on_%s'|trans)
    ) }}
</nav>

统计信息

  • 总下载量: 5.42k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 15
  • 点击次数: 1
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 15
  • Watchers: 3
  • Forks: 4
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2016-01-15