За основу взял это решение от адова сущность.
Так как не корректно у меня работало малость переделал для 1.10.3
Табы использовал эти.
1. В файле шаблона /templates/_default_/template.php вставляем это (я в хедере по привычке)
2. В файле /templates/_default_/components/com_comments_view.tpl вставляем это (привожу свой код полностью)
Если вы уже изменяли что-то под себя — будьте внимательны!
Замените SITE.RU на свой, слеш в конце домена не ставьте.
3. Стили для всего этого дела
Можно скачать тут.
Если вы захотите полностью как в демо сделать наклон у табов то нужно будет дополнить. Лично мне так понравилось.
Буду благодарен, если кто подскажет как вывести количество комментариев ВК в таб (у FB и своих комментариев это есть).
P.S.: на совместимость всякую не проверял, у меня все отлично работает на полуживом сайте.
В IE 10 ВК виджет не отображается… хз, посмотрю на досуге(
04.05.14 P.S.S.: Проверьте чекбоксы, у кого не показываются, проверьте в стилях (socialbar.css) 22 строка input[type="checkbox"]{display:none;}
Так как не корректно у меня работало малость переделал для 1.10.3
Табы использовал эти.
1. В файле шаблона /templates/_default_/template.php вставляем это (я в хедере по привычке)
<script type="text/javascript" src="//vk.com/js/api/openapi.js?112"></script> <script type="text/javascript">VK.init({apiId: ВАШ_ID_ПРИЛОЖЕНИЯ_обязательнО, onlyWidgets: true}, function(obj) { });</script> <meta property="fb:admins" content="{ваш админ айди не обязательно}"/> <meta property="fb:app_id" content="{айди вашего приложения не обязательно}"/> <script type="text/javascript"> $(document).ready(function() { $("#soccontent div.soc22").hide(); // Скрываем содержание $("#soctabs li:first").attr("id","current"); // Активируем первую закладку $("#soccontent div.soc22:first").fadeIn(); // Выводим содержание $('#soctabs a').click(function(e) { e.preventDefault(); $("#soccontent div.soc22").hide(); //Скрыть все сожержание $("#soctabs li").attr("id",""); //Сброс ID $(this).parent().attr("id","current"); // Активируем закладку $('#' + $(this).attr('title')).fadeIn(); // Выводим содержание текущей закладки }); })(); </script>
2. В файле /templates/_default_/components/com_comments_view.tpl вставляем это (привожу свой код полностью)
Если вы уже изменяли что-то под себя — будьте внимательны!
<ul id="soctabs"> <li><a href="#1" title="soctab1">{$labels.comments} ({$comments_count})</a></li> <li><a href="#2" title="soctab2">Facebook комментарии (<fb:comments-count href=http://SITE.RU{$smarty.server.REQUEST_URI}></fb:comments-count>)</a></li> <li><a href="#3" title="soctab3">ВКонтакте комментарии</a></li> </ul> <div id="soccontent"> <div id="soctab1" style="display: block;" class="soc22"> <div class="cm_ajax_list"> {if $cfg.cmm_ajax} <script type="text/javascript"> {literal} var anc = ''; } {/literal} loadComments('{$target}', {$target_id}, anc); </script> {else} {$html} {/if} </div> <a name="c"></a> <div class="cmm_links"> <span id="cm_add_link0" class="cm_add_link add_comment"> <a href="javascript:void(0);" onclick="{$add_comment_js}" class="ajaxlink">{$labels.add}</a> </span> {if $cfg.subscribe} {if $is_user} {if !$user_subscribed} <span class="subscribe"> <a href="/subscribe/{$target}/{$target_id}">{$LANG.SUBSCRIBE_TO_NEW}</a> </span> {else} <span class="unsubscribe"> <a href="/unsubscribe/{$target}/{$target_id}">{$LANG.UNSUBSCRIBE}</a> </span> {/if} {/if} {/if} {if $comments_count} <span class="cmm_rss"> <a href="/rss/comments/{$target}-{$target_id}/feed.rss">{$labels.rss}</a> </span> {/if} </div> <div id="cm_addentry0"></div> </div> <div id="soctab2" class="soc22"> <div id="cm_fb"> <div class="cmm_heading"> <div id="fb-root"></div> <script src="http://connect.facebook.net/ru_RU/all.js#xfbml=1"></script><fb:comments href="http://SITE.RU{$smarty.server.REQUEST_URI}" num_posts="10" width="870"></fb:comments> </div> </div> </div> <div id="soctab3" class="soc22"> <div class="comments_count"> <div id="cm_vk"> <div class="cmm_heading"> </div> <div id="vk_comments"></div> {literal} <script type="text/javascript"> VK.Widgets.Comments("vk_comments", {limit: 10, width: "870", onChange:myFunc}); alert(num); } </script> {/literal} </div> </div> </div>
3. Стили для всего этого дела
Можно скачать тут.
Если вы захотите полностью как в демо сделать наклон у табов то нужно будет дополнить. Лично мне так понравилось.
Буду благодарен, если кто подскажет как вывести количество комментариев ВК в таб (у FB и своих комментариев это есть).
P.S.: на совместимость всякую не проверял, у меня все отлично работает на полуживом сайте.
В IE 10 ВК виджет не отображается… хз, посмотрю на досуге(
04.05.14 P.S.S.: Проверьте чекбоксы, у кого не показываются, проверьте в стилях (socialbar.css) 22 строка input[type="checkbox"]{display:none;}
Реклама #
Су-27 10 лет назад #
kir 10 лет назад #
VK.Api.call('widgets.getComments',
{widget_api_id:API_ID,page_id:'PAGE_ID'},function(res){
console.dir(num);
})
еще можно повесить обработчик на удаление и добавления комментария, чтобы обновлять счетчик) и раньше еще был баг если добавить сообщение и тут же удалить то событие не вызовется - мб уже поправили:)
PolarOne 10 лет назад #
PolarOne 10 лет назад #
Олег с клещами 10 лет назад #
Алфей 10 лет назад #
PolarOne 10 лет назад #
Bubble Gumoff 10 лет назад #
PolarOne 10 лет назад #
display: none
PolarOne 10 лет назад #
PolarOne 10 лет назад #
Erwin 10 лет назад #
PolarOne 10 лет назад #
Если кто доработает - буду рад.)))
Сам тоже попытаюсь лучше сделать.
Bubble Gumoff 10 лет назад #
StronG 10 лет назад #
PolarOne 10 лет назад #
ID ввели?
<script type="text/javascript">VK.init({apiId: ВАШ_ID_ПРИЛОЖЕНИЯ_обязательнО, onlyWidgets: true}.........
StronG 10 лет назад #
PolarOne 10 лет назад #
если да, то нужно как-то посмотреть.
PolarOne 10 лет назад #
hummer7887 10 лет назад #
PolarOne 10 лет назад #
Тоже нужно смотреть бо не знаю, либо стили, либо конфликт. Другие виджеты от ВК стоят?
kir 10 лет назад #
pageUrl - есть такой параметр у виджета его надо задавать как ссылка на тек страницу, или просто location.href , это FB динамически определяет путь) - это позволяет выводить где то одинаковые комменты, а где то разные для разной статьи
VK вроде этого не делал, по крайне мере раньше)
PolarOne 10 лет назад #
А вот для FB специально поставил
http://SITE.RU{$smarty.server.REQUEST_URI}
иначе на всех страницах одни и теже комментарии показываются.
hummer7887 10 лет назад #
PolarOne 10 лет назад #
с виджетом "Участники группы" нормально работает, возможно продублирован виджет комментариев и/или дело в чате... больше на ум ничего не приходит.
Алфей 10 лет назад #
PolarOne 10 лет назад #
меня только в начале озадачило сквозное размещение комментов на всех страницах, но решилось просто...
а еще с табами чуток повозился пока понял что скрипт всем div ставит display: none и комментарии не показывались)
mullo 10 лет назад #
Paradoks 10 лет назад #
Paradoks 9 лет назад #