Главная Каталог: Дополнения WP-Recall Система достижений Группировка достижений с ручной выдачей.
9 ответ(ов) в теме
Lev
не в сети 1 час
На сайте с 23.06.2015
Участник
Тем 74
Сообщения 277
1
00:55

Версия WP-Recall: 16.9.0

Версия дополнения: 2.0.1

Здравствуйте.
Подскажите, возможно ли, что бы достижения с ручной выдачей не группировались, если в настройках дополнения группировка включена?
Группировка нужна для других достижений и выключать не хотелось бы.
Сейчас если я выбираю "разное" и создаю достижение с ручной выдачей, то следующее созданное, при выдаче, перекрывает первое.

Может я что-то делаю не так. Вроде все перепробовал. Я думал "разное" как раз и нужно для разных достижений без групп.

Спасибо.

0
Preci
не в сети 11 минут
На сайте с 11.11.2014
Участник
Тем 53
Сообщения 408
2
01:02

Нет, группировка идет именно по типу достижения и я не вижу в этом проблемы. Делать какие-то исключения для группировки - это еще более усложнять и без того не слабые запросы к базе.

0
Lev
не в сети 1 час
На сайте с 23.06.2015
Участник
Тем 74
Сообщения 277
3
02:08

Пока нашел такой выход:
Создаю в произвольном типе, достижение с ручной выдачей и каждому новому достижению которое не хочу группировать, просто новый тип.
Вопрос только в том, не будет ли это влиять как то на нагрузку? В ручной выдаче нужно не так много, штук 10-15 всего.
Спасибо.

0
Preci
не в сети 11 минут
На сайте с 11.11.2014
Участник
Тем 53
Сообщения 408
4
02:35

Всмысле выбираете случайный тип достижения (за запись, рейтинг и т.п.) но делаете выдачу вручную? Если появятся достижения этого типа но с авто выдачей - то будут все вместе группироваться.

Можете, как вариант, добавить свою группу с типами ачивок:

//Тип:
add_action('add_achiev_type', 'add_achiev_type_custom_oiuj7', 20);
 
function add_achiev_type_custom_oiuj7() {
 
    global $Achiev_types;
 for($i=1;$i <= 15; $i++) {
    $types[] = array(
        'name' => 'Кастомное достижение-'.$i,
        'slug' => 'custom_achiev_'.$i
    );
}
 
    $args = array(
        'group_name' => 'Моя группа достижений',
        'types' => $types
    );
 
    $Achiev_types['my_group'] = $args;
}

Этот код в файл функций темы и у вас будет +16 новых типов ачивок в выпадающем меню выбора типа. Тогда они не будут группироваться и все будет нормально работать.

1
Lev
не в сети 1 час
На сайте с 23.06.2015
Участник
Тем 74
Сообщения 277
5
03:50

Да, покопавшись не много, стало ясно, что придуманный мною выше вариант, совсем не вариант ) типы рано или поздно закончатся.
По поводу авто выдачи, я не предполагал, что они потом сгруппируются с ручными. Печаль.

Спасибо большое за предложенный вариант, завтра буду пробовать. Я так понимаю, значение - 15 можно увеличивать? Если да, то наверно это выход.

Дело в том, что не хотелось бы отказываться от такого крутого функционала с группировкой. Но планируется, что будут и совсем уникальные достижения, которые будут выдаваться один раз конкретному человеку.
Скажем есть мероприятия за которое будет выдаваться достижение первым 3 победителям. 3 разные уникальные ачивки. ( не обязательно визуально. По описанию и названию например ) В следующем мероприятии так же 3 человека получат достижения и опять 3 уникальных за конкретное, текущее мероприятие. Таких мероприятий по 2 в неделю или по 1 разу в 3 мс бывает. Вот такая заморочка ) думаю, как можно выкрутиться.

Спасибо большое за помощь. Завтра буду пробовать ваш код.

0
Preci
не в сети 11 минут
На сайте с 11.11.2014
Участник
Тем 53
Сообщения 408
6
03:53

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

0
Lev
не в сети 1 час
На сайте с 23.06.2015
Участник
Тем 74
Сообщения 277
7
11:21

Я уверен, что большинство даже не догадается о такой возможности. Даже если подсказки писать везде. и будут удивляться, почему предыдущее пропало ))
Но наверно придется совмещать эту возможность с кодом который вы дали. Спасибо за поддержку, буду пробовать.
Отпишусь, что получилось.

0
Otshelnik-Fm
не в сети 26 минут
На сайте с 27.01.2013
Модератор
Тем 22
Сообщения 9595
8
11:29

Lev сказал(а)
Я уверен, что большинство даже не догадается о такой возможности

Для юзеров всегда есть возможность написать руководство и отправлять туда почитать (FAQ раздел). Так с себя нагрузку снимите

0
Lev
не в сети 1 час
На сайте с 23.06.2015
Участник
Тем 74
Сообщения 277
9
20:46

Otshelnik-Fm

Почти по всему, что может вызывать вопросы у юзера, пишу в faq. Но.. )

Большое спасибо Preci, ваш код полностью решает мою проблему.
Думаю мне хватит 10-15 костомных типов. Однотипные ачивки будут группироваться.
Спасибо за помощь!

Редакции сообщения
16.12.2017 20:47LevПричина: не указано
1
Тема закрыта. Публикация новых сообщений запрещена.