В стандартном поле соцсетей только 3 кнопки, можно туда скопировать код еще и вконтакте?
Не подскажите как это сделать?
Отправлено 15 May 2013 - 06:38
В стандартном поле соцсетей только 3 кнопки, можно туда скопировать код еще и вконтакте?
Не подскажите как это сделать?
Отправлено 15 May 2013 - 07:19
http://forum.joomla-...24.html#msg2424
там есть элемент рабочий
есть еще комерческий плагин, там все и вконтакте и однокласники гугл плюс и т.д
Сообщение отредактировал alexmixaylov: 15 May 2013 - 07:20
Отправлено 15 May 2013 - 08:35
http://forum.joomla-...24.html#msg2424
там есть элемент рабочий
есть еще комерческий плагин, там все и вконтакте и однокласники гугл плюс и т.д
Спасибо, там конечно столько информации...
А мне надо всегото кнопку добавить, не закладки,
это правильно?
"Насколько я понимаю, скажем для добавления кнопки "вконтакте" нужно внести правку в файл
/media/zoo/elements/socialbuttons/socialbuttons.php"
можно туда просто код кнопки скопировать?
Отправлено 15 May 2013 - 08:58
Вот код socialbuttons.php с Вконтакте Mail.ru и Одноклассники
<?php /** * @package com_zoo * @author YOOtheme http://www.yootheme.com * @copyright Copyright (C) YOOtheme GmbH * @license http://www.gnu.org/licenses/gpl.html GNU/GPL */ /* Class: ElementSocialbuttons The Socialbuttons element class */ class ElementSocialbuttons extends Element implements iSubmittable { private $doc = ''; function __construct(){ parent::__construct(); $this->doc = JFactory::getDocument(); } /* Function: hasValue Checks if the repeatables element's value is set. Parameters: $params - render parameter Returns: Boolean - true, on success */ public function hasValue($params = array()) { return $this->get('value', $this->config->get('default')) && ($this->config->get('twitter') || $this->config->get('google') || $this->config->get('facebook')); } /* Function: render Override. Renders the element. Parameters: $params - render parameter Returns: String - html */ public function render($params = array()) { // render html if ($this->get('value', $this->config->get('default'))) { //init vars $params = $this->app->data->create($params); $html = array(); $item_route = JRoute::_($this->app->route->item($this->_item, false), true, -1); $locale = $this->config->get('locale') ? '' : str_replace('-', '_', $this->app->system->getLanguage()->getTag()); // Facebook and Google only seem to support es_ES and es_LA for all of LATAM $locale = (substr($locale, 0, 3) == 'es_' && $locale != 'es_ES') ? 'es_LA' : $locale; // add assets $this->app->document->addStylesheet('elements:socialbuttonsall/socialbuttons.css'); $html[] = '<div class="yoo-zoo socialbuttons clearfix">'; // Tweet Button if ($this->config->get('twitter')) { $this->app->system->document->addScript('//platform.twitter.com/widgets.js'); $html[] = '<div><a href="//twitter.com/share" class="twitter-share-button"' .' data-url="'.htmlspecialchars($item_route).'"' . ($params->get('twvia') ? ' data-via="'.$params->get('twvia').'"' : '') . ($params->get('twtext') ? ' data-text="'.$params->get('twtext').'"' : '') . ($params->get('twrelated') ? ' data-related="'.$params->get('twrelated').'"' : '') . ($params->get('twcount') ? ' data-count="'.$params->get('twcount').'"' : '') . ($locale ? ' data-lang="'.$locale.'"' : '') .'>'.JText::_('Tweet').'</a></div>'; } // Google Plus One if ($this->config->get('google')) { $this->app->system->document->addScript('//apis.google.com/js/plusone.js'); $html[] = '<div><div class="g-plusone" data-href="'.htmlspecialchars($item_route).'"' .($params->get('ggsize') ? ' data-size="'.$params->get('ggsize').'"' : '') .($params->get('ggannotation') ? ' data-annotation="'.$params->get('ggannotation').'"' : '') .($params->get('ggwidth') ? ' data-width="'.$params->get('ggwidth').'"' : '') .($locale ? '' : ' data-lang="'.$locale.'"') .'></div></div>'; } // Facebook Like if ($this->config->get('facebook')) { static $added = false; if (!$added) { $this->app->system->document->addScriptDeclaration( 'jQuery(function($) { if (!$("body").find("#fb-root").length) { $("body").append(\'<div id="fb-root"></div>\'); (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = "//connect.facebook.net/'.($locale ? $locale : 'en_US').'/all.js#xfbml=1"; fjs.parentNode.insertBefore(js, fjs); }(document, \'script\', \'facebook-jssdk\')); }});'); $added = true; } $html[] = '<div><div class="fb-like"' .' data-href="'.htmlspecialchars($item_route).'"' .' data-send="false"' .' data-layout="'.$params->get('fblayout').'"' .' data-width="'.$params->get('fbwidth').'"' .' data-show-faces="'.$params->get('fbshow_faces').'"' .' data-action="'.$params->get('fbaction').'"' .' data-colorscheme="'.$params->get('fbcolorscheme').'"' .($params->get('ref') ? ' data-ref="'.$params->get('fbref').'"' : '') .'></div></div>'; } //vkontakte $this->doc->addScript("http://vk.com/js/api/openapi.js?84"); $this->doc->addScriptDeclaration(<<<'VKHEAD' VK.init({apiId: 3510283, onlyWidgets: true}); VKHEAD ); $html[] = '<div id="vk_like"></div> <script type="text/javascript"> VK.Widgets.Like("vk_like", {type: "button", height: 20}); </script>'; // mail.ru + odnoklassniki $html[] = <<<'MAILRU' <div id="mailru"><a target="_blank" class="mrc__plugin_uber_like_button" href="http://connect.mail.ru/share" data-mrc-config="{'cm' :'1', 'ck' : '1', 'sz' : '20', 'st' : '2', 'tp' : 'combo'}">??N??°????N?N?N?</a><script src="http://cdn.connect.mail.ru/js/loader.js" type="text/javascript" charset="UTF-8"></script></div> MAILRU; $html[] = '</div>'; return implode("\n", $html); } return null; } /* Function: edit Renders the edit form field. Returns: String - html */ public function edit() { return $this->app->html->_('select.booleanlist', $this->getControlName('value'), '', $this->get('value', $this->config->get('default'))); } /* Function: renderSubmission Renders the element in submission. Parameters: $params - AppData submission parameters Returns: String - html */ public function renderSubmission($params = array()) { return $this->edit(); } /* Function: validateSubmission Validates the submitted element Parameters: $value - AppData value $params - AppData submission parameters Returns: Array - cleaned value */ public function validateSubmission($value, $params) { return array('value' => (bool) $value->get('value')); } }
Отправлено 17 May 2013 - 06:38
RomanL, вставляю ваш код и кнопки вплоть до вконтакте отображаются столбиком, а Mail.ru и Одноклассники уже в строчку (исходный код - всё в строчку). Как поправить? Спасибо