1. Приветствуем Вас на неофициальном форуме технической поддержки XenForo на русском языке. XenForo - коммерческий форумный движок от бывших создателей vBulletin, написанный на PHP.

XF2.0- замена стандартных кнопок "Поделиться"

Тема в разделе "Модификации шаблонов", создана пользователем EDW, 13.01.2018.

Загрузка
Метки:
  1. EDW

    EDW Местный

    Регистрация:
    17.05.13
    Сообщения:
    78
    Симпатии:
    27
    Версия XF:
    1.5.4
    Речь о стандартном виджете кнопок "Поделиться". Чтобы не ставить доп плагины и прочее.
    Идём в Админку, далее "Внешний вид", далее "Шаблоны", далее в списке шаблонов Вашего стиля ищем шаблон: share_page_macros (в дефолтном он так называется), открываем его и видим код типа:
    PHP:
    <xf:macro name="buttons" arg-iconic="{{ false }}" arg-label="">
        <
    xf:if contentcheck="true">
            <
    xf:css src="share_controls.less" />
            <
    div class="shareButtons {{ $iconic ? 'shareButtons--iconic' : '' }}" data-xf-init="share-buttons">
                <
    xf:if is="$label is not empty">
                    <
    span class="shareButtons-label">{$label}</span>
                </
    xf:if>

                <
    xf:contentcheck>

                    <
    xf:if is="$xf.options.facebookLike">
                        <
    class="shareButtons-button shareButtons-button--facebook" data-href="https://www.facebook.com/sharer.php?u={url}">
                            <
    i aria-hidden="true"></i>
                            <
    span>{{ phrase('facebook') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.tweet.enabled">
                        <
    class="shareButtons-button shareButtons-button--twitter" data-href="https://twitter.com/intent/tweet?url={url}&amp;text={title}{{ $xf.options.tweet.via ? '&amp;via=' . $xf.options.tweet.via : '' }}{{ $xf.options.tweet.related ? '&amp;related=' . $xf.options.tweet.related : '' }}">
                            <
    i aria-hidden="true"></i>
                            <
    span>{{ phrase('twitter') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.plusone">
                        <
    class="shareButtons-button shareButtons-button--gplus" data-href="https://plus.google.com/share?url={url}">
                            <
    i aria-hidden="true"></i>
                            <
    span>{{ phrase('google_plus') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.redditShare">
                        <
    class="shareButtons-button shareButtons-button--reddit" data-href="https://reddit.com/submit?url={url}&amp;title={title}">
                            <
    i aria-hidden="true"></i>
                            <
    span>{{ phrase('reddit') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.pinterestShare">
                        <
    class="shareButtons-button shareButtons-button--pinterest" data-href="https://pinterest.com/pin/create/bookmarklet/?url={url}&amp;description={title}">
                            <
    i></i>
                            <
    span>{{ phrase('pinterest') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.tumblrShare">
                        <
    class="shareButtons-button shareButtons-button--tumblr" data-href="https://www.tumblr.com/widgets/share/tool?canonicalUrl={url}&amp;title={title}">
                            <
    i></i>
                            <
    span>{{ phrase('tumblr') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.whatsAppShare">
                        <
    class="shareButtons-button shareButtons-button--whatsApp" data-href="https://api.whatsapp.com/send?text={title}&nbsp;{url}">
                            <
    i></i>
                            <
    span>{{ phrase('whatsapp') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.emailShare">
                        <
    class="shareButtons-button shareButtons-button--email" data-href="mailto:?subject={title}&amp;body={url}">
                            <
    i></i>
                            <
    span>{{ phrase('email') }}</span>
                        </
    a>
                    </
    xf:if>

                    <
    xf:if is="$xf.options.linkShare">
                        <
    class="shareButtons-button shareButtons-button--link is-hidden" data-clipboard="{url}">
                            <
    i></i>
                            <
    span>{{ phrase('link') }}</span>
                        </
    a>
                        <
    xf:js>
                            
    jQuery.extend(XF.phrases, {
                                
    link_copied_to_clipboard"{{ phrase('link_copied_to_clipboard')|escape('js') }}"
                            
    });
                        </
    xf:js>
                    </
    xf:if>
                </
    xf:contentcheck>
            </
    div>
        </
    xf:if>
    </
    xf:macro>

    <
    xf:macro name="share_clipboard_input" arg-label="!" arg-text="!">
        <
    xf:css src="share_controls.less" />

        <
    xf:set var="$id">{{ unique_id() }}</xf:set>

        <
    div class="shareInput" data-xf-init="share-input">
            <
    xf:if is="$label">
                <
    label class="shareInput-label" for="{$id}">{$label}</label>
            </
    xf:if>
            <
    div class="inputGroup inputGroup--joined">
                <
    div class="shareInput-button inputGroup-text js-shareButton is-hidden"
                    
    data-xf-init="tooltip" title="{{ phrase('copy_to_clipboard')|for_attr }}">

                    <
    i></i>
                </
    div>
                <
    xf:textbox class="shareInput-input js-shareInput"
                    
    value="{$text}readonly="true" id="{$id}/>
            </
    div>
        </
    div>

        <
    xf:js>
            
    jQuery.extend(XF.phrases, {
                
    text_copied_to_clipboard"{{ phrase('text_copied_to_clipboard')|escape('js') }}"
            
    });
        </
    xf:js>
    </
    xf:macro>
    Удаляем всё что между <xf:contentcheck> и </xf:contentcheck>, между этими строками можно вставить к примеру код полученных кнопок Яндекса взятого тут , ну или другого сервиса. Сохраняем. Готово.
     
    Bugaga нравится это.

Поделиться этой страницей