CMS Eleanor - Поиск
Полная версия этой страницы: Официальный форум Eleanor CMS » Яндекс Метрика в админке
Официальный форум Eleanor CMS » Поддержка пользователей системы Eleanor CMS » Секреты и советы
Страницы: 1, 2
Alexander
Тут, наверное, проще дать готовое, чем объеснить. Итак.

1. Качаем файл из первого сообщения, вложенные js файлы загружаем в каталог js, что в корне системы.
2. Открываем файл templates/Audora/Template/Classes/General.php и правим его:

Находим:
$GLOBALS['jscripts'][]='js/tabs.js';


Заменяем на (но перед тем, как заменить XXX нужно изменить на ID своего сайта в Яндекс.Метрике):
array_push($GLOBALS['jscripts'],'js/tabs.js','js/amcharts.js', 'js/raphael.js', '//bs.yandex.ru/informer/XXX/json');
		$GLOBALS['head']['mcharts']='<script type="text/javascript">//<![CDATA
var chart,
	chartData=[];

$(function(){
	for(var i = 0; i < 7; i++)
	{
		var newDate = new Date();
		newDate.setDate(newDate.getDate() - i);
		newDate = newDate.toDateString();
		newDate = newDate.slice(5);

		chartData.push({
			date:newDate,
			visitors:yandex_metrika_json_informer.uniques[i],
			visits:yandex_metrika_json_informer.visits[i],
			pages:yandex_metrika_json_informer.pageviews[i]
		});
	}
	// SERIAL CHART
	chart = new AmCharts.AmSerialChart();
	chart.dataProvider = chartData;
	chart.categoryField = "date";
	chart.startDuration = 1;
	chart.plotAreaBorderColor = "#DADADA";
	chart.plotAreaBorderAlpha = 1;
	      chart.marginBottom = 25;
	      chart.marginLeft = 50;

	// AXES
	// Category
	var categoryAxis = chart.categoryAxis;
	categoryAxis.gridPosition = "start";
	categoryAxis.gridAlpha = 0.1;
	categoryAxis.axisAlpha = 0;

	// Value
	var valueAxis = new AmCharts.ValueAxis();
	valueAxis.axisAlpha = 0;
	valueAxis.gridAlpha = 0.1;
	valueAxis.tickLength = 0;
	chart.addValueAxis(valueAxis);

	// GRAPHS
	// first graph
	var graph1 = new AmCharts.AmGraph();
	graph1.type = "column";
	graph1.title = "Посетители";
	graph1.valueField = "visitors";
	graph1.balloonText = "Посетители:[[value]]";
	graph1.lineAlpha = 0;
	graph1.fillColors = "#81acd9";
	graph1.fillAlphas = 1;
	chart.addGraph(graph1);

	// second graph
	var graph2 = new AmCharts.AmGraph();
	graph2.type = "column";
	graph2.title = "Визиты";
	graph2.valueField = "visits";
	graph2.balloonText = "Визиты:[[value]]";
	graph2.lineAlpha = 0;
	graph2.fillColors = "#FF0F00";
	graph2.fillAlphas = 1;
	chart.addGraph(graph2);

	// third graph
	var graph3 = new AmCharts.AmGraph();
	graph3.type = "column";
	graph3.title = "Просмотры";
	graph3.valueField = "pages";
	graph3.balloonText = "Просмотры:[[value]]";
	graph3.lineAlpha = 0;
	graph3.fillColors = "#FCD202";
	graph3.fillAlphas = 1;
	chart.addGraph(graph3);

	// LEGEND
	var legend = new AmCharts.AmLegend();
	chart.addLegend(legend);

	// WRITE
	var ch=$("#chartdiv").clone().prop("id","mechart").css({position:"absolute","left":-1000,"top":-1000}).appendTo("body").show();
	chart.write("mechart");
	ch.removeAttr("id").css("position","").appendTo("#chartdiv");
});
//]]></script>';



Находим:
<li><a class="selected" data-rel="stab1" href="#"><b>'.static::$lang['stat'].'</b></a></li>


Заменяем на:
	<li><a class="selected" data-rel="metrika" href="#"><b>Яндекс Метрика</b></a></li>
	<li><a data-rel="stab1" href="#"><b>'.static::$lang['stat'].'</b></a></li>


Находим:
<div id="stab4" class="tabcontent"></div>


Добавляем ниже:
<div id="metrika" class="tabcontent"><div id="chartdiv" style="width:800px; height:400px; background-color:#FFFFFF"></div></div>
kentik
Цитата (Alexander @ 2013-03-13, 4:59)
Тут, наверное, проще дать готовое, чем объеснить. Итак.


в итоге получилось так: [attachment=1049:1234.png]

при нажатии на любую закладку - выходит мойсайт.ru/#
Alexander
kentik, что говорит лог ошибок?
kentik
Цитата (Alexander @ 2013-03-13, 19:29)
kentik, что говорит лог ошибок?

Warning(2): Division by zero
templates/Uniel/Classes/UserNews.php[496]
Сегодня 19:37
/
Warning(1): include(/home/k/kentik/public_html/templates/Uniel/Static/login.php) [function.include]: failed to open stream: No such file or directory
templates/Uniel/index.php[76]
Сегодня 19:37
/
Warning(1): include() [function.include]: Failed opening '/home/k/kentik/public_html/templates/Uniel/Static/login.php' for inclusion (include_path='.:/opt/php5.3/lib/php')
templates/Uniel/index.php[76]
Сегодня 19:37

Alexander
kentik, я о браузерной консоли ошибок... А за эти ошибки спасибо, буду исправлять.
Alexander
kentik, все ошибки на вашем сайте исправлены. Метрку тоже подправил: была моя ошибка. Почему-то в код попал тег [csel], сейчас исправлен в оригинальном посте.
kentik
Цитата (Alexander @ 2013-03-14, 5:10)
kentik, все ошибки на вашем сайте исправлены. Метрку тоже подправил: была моя ошибка. Почему-то в код попал тег [csel], сейчас исправлен в оригинальном посте.

спасибульки.
все заработало
единственное показывает дату так: ar 14 2013
т.е не хватает первой и последней буквы в слове mart
alexben73
Цитата (kentik @ 2013-03-14, 12:23)
спасибульки.
все заработало
единственное показывает дату так: ar 14 2013
т.е не хватает первой и последней буквы в слове mart


смотрите обьект newDate и правьте для себя, в данном случае вся магия отформатированой даты в этой строчке newDate = newDate.slice(5);
а метод слайс гуглится :)
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.