Перейти к содержанию

by_ix

Рекомендуемые сообщения

by_ix сумма просмотра блогов total_blogs_views и сумма просмотров записей блогов total_entries_views (скриншот выше), сделанные по моей методичке почему-то для дефолтного виджета у меня совпадают  =1,328,515. Возможно, я что-то делаю не так. Какой SQL запрос к базе позволит проверить отдельно эти данные, чтобы потом суммировать в калькуляторе?

Изменено пользователем Zero108
Ссылка на комментарий
Поделиться на другие сайты

23 часа назад, Zero108 сказал:

Да, вы правы. Сейчас посмотрю, как я это настраивал для виджетов раньше. Давно было.

1. Downloads - заменить в статистике количество обзоров/комментариев на количество скачиваний:

/applications/downloads/widgets/downloadStats.php

Найти:
SUM(file_reviews) AS totalReviews
Заменить на:
SUM(file_downloads) AS totalReviews

Найти:
SUM(file_comments)
Заменить на:
SUM(file_views)

Шаблон downloadStats

Заменить блочек внизу:

		<div class='ipsGrid ipsGrid_collapsePhone ipsWidget_stats'>
			<div class='ipsGrid_span{$span} ipsType_center cDownloadsWidget_statsNumber'>
				<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['totalFiles']"}</span><br>
				<span class='ipsType_light ipsType_medium'>{lang="total_files_front"}</span>
			</div>
			{{if $stats['totalReviews']}}
				<div class='ipsGrid_span{$span} ipsType_center cDownloadsWidget_statsNumber'>
					<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['totalReviews']"}</span><br>
					<span class='ipsType_light ipsType_medium'>{lang="downloads_file_info"}</span>
				</div>
			{{endif}}
          		<div class='ipsGrid_span{$span} ipsType_center cDownloadsWidget_statsNumber'>
					<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['totalComments']"}</span><br>
					<span class='ipsType_light ipsType_medium'>{lang="video_sort_views"}</span>
				</div>
			{{if $latestFile}}
				<div class='ipsGrid_span{$span} ipsType_left cNewestMember'>
					<div id='elDownloadStatsLatest' class='ipsClearfix'>
						<span class='ipsType_minorHeading'>{lang="latest_file"}</span><br>
						<div class='ipsType_break ipsContained'><a href="{$latestFile->url()}" title='{lang="view_this_file" sprintf="$latestFile->name"}' class='ipsTruncate ipsTruncate_line'>{$latestFile->name}</a></div>
						<span class='ipsType_light ipsType_medium'>{lang="byline_nodate" htmlsprintf="$latestFile->author()->link()"}</span>
						<p class='ipsType_medium ipsType_reset'>{{if !$latestFile->downloads}}<span class='ipsType_light'>{{endif}}<i class='fa fa-arrow-circle-down'></i> {$latestFile->downloads}{{if !$latestFile->downloads}}</span>{{endif}} {{if $latestFile->container()->bitoptions['comments']}}&nbsp;&nbsp;{{if !$latestFile->comments}}<span class='ipsType_light'>{{endif}}<i class='fa fa-comment'></i> {$latestFile->comments}{{endif}}{{if !$latestFile->comments}}</span>{{endif}}</p>
					</div>
				</div>
			{{endif}}
		</div>

2. Gallery - заменить в статистике количество обзоров/комментариев на количество просмотров.
 

/applications/gallery/widgets/galleryStats.php

Найти:
SUM(image_comments) AS totalComments
Заменить на:
SUM(image_views) AS totalComments

Шаблон galleryStats 

Заменить блочек внизу:
		<div class='ipsGrid ipsGrid_collapsePhone ipsWidget_stats'>
          	{{if $stats['totalAlbums']}}
				<div class='ipsGrid_span4 ipsType_center'>
					<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['totalAlbums']"}</span><br>
					<span class='ipsType_light ipsType_medium'>{lang="albums"}</span>
				</div>
			{{endif}}
			<div class='ipsGrid_span4 ipsType_center'>
				<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['totalImages']"}</span><br>
				<span class='ipsType_light ipsType_medium'>{lang="digest_area_gallery_image"}</span>
			</div>
          		 <div class='ipsGrid_span4 ipsType_center'>
					<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['totalComments']"}</span><br>
					<span class='ipsType_light ipsType_medium'>{lang="video_sort_views"}</span>
				</div>
		</div>

3. Blogs - добавить количество просмотров.

/applications/blog/widgets/blogStatistics.php

Найти:

		$stats = array();
		$stats['total_blogs']   = \IPS\Db::i()->select( "COUNT(*)", 'blog_blogs' )->first();
		$stats['total_entries'] = \IPS\Db::i()->select( "COUNT(*)", 'blog_entries', array( 'entry_status=? AND entry_hidden=?', 'published', 1 ) )->first();

Заменить на:

        $stats = array_merge(
            \IPS\Db::i()->select( "COUNT(*) as total_blogs, SUM(blog_num_views) AS total_blogs_views", 'blog_blogs' )->first(),
            \IPS\Db::i()->select( "COUNT(*) as total_entries, SUM(entry_views) AS total_entries_views", 'blog_entries', array( 'entry_status=? AND entry_hidden=?', 'published', 1 ) )->first()
        );

==================

Шаблон blogStatistics 
- для вывода суммы просмотров всех блогов использовать $stats['total_blogs_views']
- для вывода суммы просмотров записей всех блогов использовать $stats['total_entries_views'] 

Заменить блочек внизу:

		<div class='ipsGrid ipsGrid_collapsePhone ipsWidget_stats'>
			<div class='ipsGrid_span4 ipsType_center'>
				<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['total_blogs']"}</span><br>
				<span class='ipsType_light ipsType_medium'>{lang="total_blogs"}</span>
			</div>
			<div class='ipsGrid_span4 ipsType_center'>
				<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['total_entries']"}</span><br>
				<span class='ipsType_light ipsType_medium'>{lang="total_entries"}</span>
			</div>
          	<div class='ipsGrid_span4 ipsType_center'>
				<span class='ipsType_large ipsWidget_statsCount'>{number="$stats['total_entries_views']"}</span><br>
				<span class='ipsType_light ipsType_medium'>{lang="video_sort_views"}</span>
			</div>
		</div>

4. Статистика форума. Добавление количества просмотра всех тем в виджет статистики.

Шаблон forumStatistics - внизу заменить на

        <div class='ipsGrid ipsGrid_collapsePhone ipsWidget_stats'>
            <div class='ipsGrid_span4 ipsType_center'>
                <span class='ipsType_large ipsWidget_statsCount'>{number="$stats['total_topics']"}</span><br>
                <span class='ipsType_light ipsType_medium'>{lang="total_topics"}</span>
            </div>
            <div class='ipsGrid_span4 ipsType_center'>
                <span class='ipsType_large ipsWidget_statsCount'>{number="$stats['total_posts']"}</span><br>
                <span class='ipsType_light ipsType_medium'>{lang="total_posts"}</span>
            </div>
           <div class='ipsGrid_span4 ipsType_center'>
                <span class='ipsType_large ipsWidget_statsCount'>{number="$stats['total_topics_views']"}</span><br>
                <span class='ipsType_light ipsType_medium'>{lang="video_sort_views"}</span>
            </div>
        </div>

===============

/applications/forums/widgets/forumStatistics.php

Найти: 
$stats['total_topics']  = \IPS\Db::i()->select( "COUNT(*)", 'forums_topics', array( 'approved = ?', 1 ) )->first();
Заменить на: 
$stats = array_merge($stats, \IPS\Db::i()->select( "COUNT(*) as total_topics, SUM(views) AS total_topics_views", 'forums_topics', array( 'approved = ?', 1 ) )->first()); 



 

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

8 минут назад, Zero108 сказал:

by_ix Какой SQL запрос к базе позволит проверить отдельно эти данные, чтобы потом суммировать в калькуляторе?

там и так два отдельных запроса идут. 

Ссылка на комментарий
Поделиться на другие сайты

14 минут назад, by_ix сказал:

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

Я поменял, согласно своему мануалу, в запросе и в шаблоне total_entries_views на total_blogs_views для дефолтного виджета. Получил в дефолтном виджете ту же самую цифру. Хотел проверить правильность своего мануала и вашего плагина. К сожалени, не получилось. На вопрос вы тоже не хотите отвечать.

Изменено пользователем Zero108
Ссылка на комментарий
Поделиться на другие сайты

7 минут назад, Zero108 сказал:

в запросе 

где именно изменено было? 

Ссылка на комментарий
Поделиться на другие сайты

20 минут назад, by_ix сказал:

где именно изменено было? 

Не имею желания и времени отвечать на ваш вопрос, потому что вы не хотите отвечать по существу на мой, заданный ранее. 

Ссылка на комментарий
Поделиться на другие сайты

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

Для себя поменял в стр. 226
            $stats['total_blogsv'] = $stats['total_blogsbv'] + $stats['total_blogsev'];
на 
            $stats['total_blogsv'] = $stats['total_blogsev'];

, чтобы отображалась статистика просмотров только записей блогов без статистики просмотра самих блогов.

Изменено пользователем Zero108
Ссылка на комментарий
Поделиться на другие сайты

39 минут назад, Zero108 сказал:

Не имею желания и времени отвечать на ваш вопрос

cringe moment. будто это мне надо, а не тебе. 

32 минуты назад, Zero108 сказал:

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

cringe moment x2. у форумов нет учёта статы просмотров.

и научись говорить спасибо, вместо своего псевдовыпендрёжа про время.

Ссылка на комментарий
Поделиться на другие сайты

by_ix мне кажется, спасибо уже было сказано мной в виде сердечек выше за плагин и дельные советы. Когда не за что говорить спасибо, зачем говорить спасибо?! Ну, и давать хамские советы незнакомым людям, - такое себе. Посмотрят, как ты общаешься, будут обходить твои платные услуги стороной, как мне кажется. Я же тебе не хамил.

Надеюсь, на улице ты с незнаковыми людьми ты так себя не ведешь.

Изменено пользователем Zero108
Ссылка на комментарий
Поделиться на другие сайты

Жаль, что плагин не позволяет создавать несколько разных копий с разными настройками. То есть, если добавляешь плагин на нескольких страницах в разных приложениях, то везде настройки плагина будут дублироваться. Я полагаю, что чтобы настройки не дублировались, их значения нужно хранить в разных местах.

Изменено пользователем Zero108
Ссылка на комментарий
Поделиться на другие сайты

  • 2 месяца спустя...

А как реализовать чтобы он на всю страницу был а не видимости под ширину форума(разделы)?

Ссылка на комментарий
Поделиться на другие сайты

7 минут назад, by_ix сказал:

Dusty 

 

Помогло но он теперь выходит за рамки форума как теперь его выровнять  теперь )

Ссылка на комментарий
Поделиться на другие сайты

by_ix бро, а как можно замутить разное оформление для тёмной и светлой темы? Что-то не могу попасть, чтобы и там и там норм смотрелось)

Ссылка на комментарий
Поделиться на другие сайты

8 минут назад, the.bunin сказал:

by_ix бро, а как можно замутить разное оформление для тёмной и светлой темы? Что-то не могу попасть, чтобы и там и там норм смотрелось)

если для светлого стиля? то просто бэгроунд убери и в кастом закинь в светлый стиль)))

.xfglstats-column-2 {
  background: #434956;
    background-clip: border-box;
}

вроде как должно сработать :df:

Спойлер

6565.thumb.PNG.61108777886ae44b30b5062ea636dec8.PNG

 

Ссылка на комментарий
Поделиться на другие сайты

SlawkA от души, сейчас попробую)

Просто думаю лучше то было бы добавить такую надстройку (если возможно), ибо многие используют несколько тем, чтобы не городить костыли как раз :)

Ссылка на комментарий
Поделиться на другие сайты

  • 5 месяцев спустя...

Я правильно понимаю, что при подсчете максимального онлайна учитываются гости? И это значение равняется максимальному числу посетителей в момент времени, а не за день?

Ссылка на комментарий
Поделиться на другие сайты

Захотелось мне при наведении на число в макс. онлайне видеть дату этого события, как в оригинальном Global Statistics. Нашел где это ставится, добавил в шаблон data-ipsTooltip в нужном месте и все хорошо, все появляется. Решил добавить эту же запись в файл плагина. Раскодировал шаблон, добавил запись, закодировал, заменил в файле, но при попытке обновить версию файла через ACP все равно изменения не применяются, хотя с переводом все отлично работает. Пробовал удалить плагин и чистил кэш - бестолку. Что еще надо сделать? Не хочется каждый раз при переустановке плагина лезть и править шаблон для каждой темы.

Изменено пользователем edmsl
Ссылка на комментарий
Поделиться на другие сайты

Вопрос снят. Что-то не так было при удалении, видимо. Повторил удаление еще раз и теперь обновление версии изменило шаблон.

Кстати, если кто захочет так же вывести дату максимального онлайна, то нужно добавить data-ipsTooltip title='<time data-norelative="true">{$stats['most_online']['time']}</time>' в span с классом xfglstats-number у блока xfglstats_online.

Цитата

<span class="xfglstats-number" data-ipsTooltip title='<time data-norelative="true">{$stats['most_online']['time']}</time>'>

Полный код:

Спойлер
{{if settings.xfglstats_online}}
		<div class="xfglstats-column-1{{if $orientation == 'vertical'}}{{else}} xfglstats-width{{endif}}">
			<div class="xfglstats-column-2">
				<div class="xfglstats-column-3">
					<div class="xfglstats-title">{lang="xfglstats_online"}</div>
					<h2 class="xfglstats-value">
						<i class="{setting='xfglstats_online_i'} xfglstats-value-icon xfglstats-online"></i>
						<span class="xfglstats-number" data-ipsTooltip title='<time data-norelative="true">{$stats['most_online']['time']}</time>'>{{if settings.xfglstats_short}}{number="$stats['most_online']['count']" format="short"}{{else}}{number="$stats['most_online']['count']"}{{endif}}</span>
					</h2>
				</div>
			</div>
		</div>
	{{endif}}

 

 

Ссылка на комментарий
Поделиться на другие сайты

  • 2 недели спустя...

Не дружит с этой темой. Может есть решение, заранее спасибо.

 

Ссылка на комментарий
Поделиться на другие сайты

Сделал себе под тему Nexxe, добавил несколько сторонних приложений в статистику, добавил количество категорий и т.п., поменял иконки и цвет:

 

Online Users - International Vaishnavas Portal - Google Chrome.jpg

Изменено пользователем Zero108
Ссылка на комментарий
Поделиться на другие сайты

26 минут назад, Zero108 сказал:

 

Online Users - International Vaishnavas Portal - Google Chrome.jpg

зачем это вообще надо?

Ссылка на комментарий
Поделиться на другие сайты

6 минут назад, Exception сказал:

зачем это вообще надо?

Вообще не нужно. Забавы успешных и богатых часто бессмысленны.

Ссылка на комментарий
Поделиться на другие сайты

  • 1 месяц спустя...

Жаль в боковую панель не установить, минимум 3 столба, получается дичь 😁 Но всё равно спасибо!

Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...