Форумы / National / Russian / Сборка «Фриланс-биржа» / Как вывести количество проектов (Projects)?

deelance
#1 18.01.2023 18:59

Возможно ли как-то вывести цифрой количество "актуальных" и отдельно "завершенных" заданий?

Т.е. завершенная задача считается та, в которой принят исполнитель. 

webitproff
#2 19.01.2023 00:10
#45851 deelance:

Возможно ли как-то вывести цифрой количество "актуальных" и отдельно "завершенных" заданий?

Т.е. завершенная задача считается та, в которой принят исполнитель. 

Нужно как-то инструкцию написать по таким постам-запросам

smiley

Начинайте с того, что Вы видите на своем сайте:

шаблон (страница) то есть что Вы сейчас просматриваете, - главная, страница пользователя, страница проекта, списки новостей ?

участок этой станицы: шапка (header.tpl) или подвал (footer.tpl), или это тело самой страницы (модуль/плагин)

затем не мало важно от имени кого Вы просматривате: заказчик, гость, исполнитель ...

затем подробно о проблеме или стоящей задаче - что именно нужно сделать, или что не работает.

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

 

аккаунт удален - не срослось с разработчиками
ушел на другой движок
deelance
#3 19.01.2023 03:02
#45852 webitproff:
#45851 deelance:

Возможно ли как-то вывести цифрой количество "актуальных" и отдельно "завершенных" заданий?

Т.е. завершенная задача считается та, в которой принят исполнитель. 

Нужно как-то инструкцию написать по таким постам-запросам

smiley

Начинайте с того, что Вы видите на своем сайте:

шаблон (страница) то есть что Вы сейчас просматриваете, - главная, страница пользователя, страница проекта, списки новостей ?

участок этой станицы: шапка (header.tpl) или подвал (footer.tpl), или это тело самой страницы (модуль/плагин)

затем не мало важно от имени кого Вы просматривате: заказчик, гость, исполнитель ...

затем подробно о проблеме или стоящей задаче - что именно нужно сделать, или что не работает.

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

 

Большое спасибо за информацию! Было бы не плохо сделать тут "правила" раздела)

Сейчас пока я просто разбираюсь в движке, хочу на главной странице темы (index.tpl) вывести общее число "заданий" на бирже, например вот так: "на бирже 13 заданий." Для заданий используется стандартное расширение Projects. 

Я примерно понял как получать "количество пользователей" исходя из группы. Пытался сделать нечто подобное, как в примере которым поделился Kort https://www.cotonti.com/forums/45849?m=posts, но пока не до конца понял, как это должно работать)

webitproff
#4 19.01.2023 05:10

здесь стопка плагинов,

затем там ссылка "тикать тут"

Вам нужен уже готовый плагин "CountingUsers"

на пхп 5.6 точно работал. не забудтье прочитать инструкцию

Подсчет и отображение количество пользователей, товаров и проектов на сайте "Фриланс-биржа"

###Возможности:

1. Подсчет пользователей по ID группы (+общее количество)
2. Подсчет проектов по ID статуса  (+за определенное время)
3. Подсчет опубликованных товаров
3. Кеширование результатов
4. Отображение в header и footer, index

аккаунт удален - не срослось с разработчиками
ушел на другой движок
deelance
#5 19.01.2023 06:47
#45854 webitproff:

здесь стопка плагинов,

затем там ссылка "тикать тут"

Вам нужен уже готовый плагин "CountingUsers"

на пхп 5.6 точно работал. не забудтье прочитать инструкцию

Подсчет и отображение количество пользователей, товаров и проектов на сайте "Фриланс-биржа"

###Возможности:

1. Подсчет пользователей по ID группы (+общее количество)
2. Подсчет проектов по ID статуса  (+за определенное время)
3. Подсчет опубликованных товаров
3. Кеширование результатов
4. Отображение в header и footer, index

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

Возможно ли вывести эту информацию подобной функцией? Чтобы не ставить целый плагин для такой мелочи)

function cot_count_users($group = 4, $decl = NULL) {
  global $db, $db_users;
    $group = (int)$group ? $group : 4;
    $total = cot::$db->query("
        SELECT COUNT(*)
        FROM $db_users
        WHERE user_maingrp = $group
    ")->fetchColumn();
    $total = is_null($decl) ? $total : cot_declension($total, $decl);
  return $total;
}

Например вот так (пример из плагина):


function get_prjs_count($prjs_status_id){
	global $db, $db_projects;
	return $db->query("SELECT COUNT(*) FROM $db_projects WHERE item_state=".$prjs_status_id)->fetchColumn();
}

И потом выводить в коде с помощью

{PHP|get_prjs_counts(')}

 

Отредактировано: deelance (19.01.2023 06:54, 1 год назад)
webitproff
#6 19.01.2023 07:18
#45855 deelance:

Возможно ли вывести эту информацию подобной функцией? Чтобы не ставить целый плагин для такой мелочи)

сейчас не подскажу, нужно вникать.

наводку дал - дерзайте ))

аккаунт удален - не срослось с разработчиками
ушел на другой движок
deelance
#7 19.01.2023 19:06

Возможно кому-то будет полезно)

Для того, чтобы вывести общее число заказов (заданий), добавляем в php файл темы:

function get_prjs_count($prjs_status_id){
    global $db, $db_projects;
    return $db->query("SELECT COUNT(*) FROM $db_projects WHERE item_state=".$prjs_status_id)->fetchColumn();
}

Затем во фронтенде в нужном месте выводим с помощью:

{PHP|get_prjs_count('0')}