Перейти к публикации
Дизайн и модификация IPS Community IPBSkinsBETA
Поиск в
  • Дополнительно...
Искать результаты, содержащие...
Искать результаты в...

Fisana's Blog

  • записи
    22
  • комментариев
    140
  • просмотров
    216968

Тюнинг share links на форуме (для 3.1.4 и выше)

Fisana

435 просмотров

Многие спрашивают про расширение ряда кнопок в темах с добавлением новых.

Пример здесь.

Сейчас в share links добавлены кнопки для Твиттера и Вконтакте.

Ну и для того, чтобы не индексировался мусор, все кнопочное хозяйство засунуто в noindex.

Global Templates > shareLinks

 

Весь код заменяем этим.

<noindex>
<script type="text/javascript" src="http://vkontakte.ru/js/api/share.js?10" charset="windows-1251"></script>
<style type="text/css">
tbody {
background: transparent;
}
td {
padding: 0;
}
</style>
{parse js_module="sharelinks"}
<if test="gotLinks:|:is_array( $links )">
<ul class='{$cssClass} shareButtons'>
<foreach loop="cacheLoop:$links as $id => $data">
	<if test="isEnabled:|:$data['share_enabled']">
		<li><a href="{parse url="sharelink={$data['share_key']};{$data['_url']};{$title}" base="public"}" rel="nofollow" target="_blank" title="<if test="!in_array( $data['share_key'], array( 'print', 'download' ) )">{$this->lang->words['gbl_sharelink_with']} </if>{$data['share_title']}" class='_slink' id='slink_{$data['share_key']}'><img src="{$this->settings['public_dir']}style_extra/sharelinks/{$data['share_key']}.png" /></a></li>
	</if>
</foreach>
<li>
<!-- Put this script tag to the place, where the Share button will be -->
<script type="text/javascript"><!--
document.write(VK.Share.button(false,{type: "button", text: "Сохранить"}));
--></script>
</li>
<li>
<a href="http://twitter.com/share" class="twitter-share-button" data-count="horizontal" data-via="fisana">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script></li>
</ul>
<script type="text/javascript">
	ipb.sharelinks.url   = "{parse expression="IPSText::base64_decode_urlSafe($url)"}";
	ipb.sharelinks.title = "{parse expression="IPSText::base64_decode_urlSafe($title)"}";
	ipb.sharelinks.bname = "{parse expression="trim($this->settings['board_name'])"}";
</script>
</if>
</noindex>

В коде для твиттера data-via="fisana" слово "fisana" замените на имя своего аккаунта.

При желании выше можно добавлять новые кнопки в виде

<li> код кнопки </li>

Но есть проблема, когда какой-нибудь вконтактик лежит, медленно загружается и низ тем на форуме, пытаясь достучаться до сервера...

  • Upvote 2


3 комментария


Рекомендованные комментарии

Этот шаблон используется в архиве и ip.content. В блогах используется свой шаблон, вконтактик нормально вставить не вышло. Пример тут.

  • Upvote 4

Поделиться комментарием


Ссылка на комментарий

Вставил код, но все кнопки стали располагаться в столбик, как их по горизонтали выстроить?

Поделиться комментарием


Ссылка на комментарий

Скажите, пожалуйста, это решение применимо к версии 3.4.1 и выше?

У меня почему-то google+ ссылки неправильные дает (ЧПУ включено, и между русскими буквами лишние символы проскакивают)

Поделиться комментарием


Ссылка на комментарий

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас
×
×
  • Создать...