weranda

weranda

С нами с 25 июля 2015; Место в рейтинге пользователей: #302
weranda
26 мая 2020, 13:33
0
Кажется, нашел ответ. Не знаю насколько он правилен, но работает.
Ответ тут: modx.pro/help/6509
Если есть/будут какие-то дополнения, будет интересно их узнать.
weranda
26 мая 2020, 13:26
0
Из вашего совета понял вот что:
1. вызываем pdoMenu
2. в чанке шаблона меню указываем, что если идентификатор текущей страницы не равен какому-то непонятному идентификатору, то выводим меню… в общем, не понял я посыла, что и на что влияет)
Могли бы чуть более подробно рассказать?
weranda
14 марта 2020, 12:05
0
Вот это, кажется, правильное для меня решение! Спасибо.
Посоветуете что можно почитать/посмотреть по этому вопросу еще?
weranda
14 марта 2020, 12:00
0
Я не понимаю как это поможет упростить мой случай. Расскажете?
Для примера еще раз поясню, но теперь наглядно. Вот скриншот ресурса:

Выбор значений может потребоваться в любом поле и даже несколько раз с разными данными в одном ресурсе.
weranda
14 марта 2020, 07:32
0
Да, именно так: список написал в сниппете и там же его редактирую.
По поводу дополнительного поле и MIGX мне малость непонятен алгоритм. Вы предлагаете добавить дополнительное поле, вписать в него в отдельно взятом ресурсе список, потом в в каком-либо месте (шаблон, другое поле ресурса) вывести сниппет, который будет принимать данные из дополнительного поля MIGX и выводить случайные записи в нужном количестве, которое будет задаваться все в том же сниппете. Если это так, то какая разница между полем MIGX и другим дополнительным полем стандартного типа? Если это так, то это вовсе не упрощает ситуацию, а лишь делает её немного другой — только вид сбоку;) Если это так, то как тогда быть если в одном ресурсе, к примеру, в пяти полях вывести выбор из нескольких или произвольного колисества списков? — Добавлять Х MIGX полей? Если же это не так, то поясните пожалуйста мысль, если можно, то чуточку подробнее.
weranda
12 марта 2020, 08:25
0
1. Я его в сниппет засунул.
2. От необходимости/желания. Особых условий нет. Примеры привел выше, вариантов выбора может быть от двух до десятков.
3. Если мне нужно сделать простой выбор между двумя вариантами, то если надо будет лезть отдельно в MIGX, то это не особо будет «доставлять».
weranda
23 февраля 2020, 12:55
0
Спасибо за ответ. А если вас попросить реализовать такую штуку, во сколько это примерно обойдется?
weranda
23 февраля 2020, 08:23
0
А можно запилить в вашем компоненте вот какую штуку.
1. Человек голосует на странице за услугу, ставит оценки звездочками трем полям: скорость, цена, качество.
2. На странице услуги выводится частный и обобщенный рейтинг. К примеру, человек поставил такие оценки: скорость (3 звезды), цена (4 звезды), качество (5 звезд). Должно быть два блока: в первом выводится обобщенный рейтинг ((3+4+5)/3=4), а во втором частный — отдельно по каждому полю (скорость, цена, качество). Когда голосует другой человек этот рейтинг в двух блоках корректируется с учетом его оценок.
3. В каталоге услуг, где несколько услуг, показывать этот рейтинг услугам (обобщенный по услуге и детальный (обобщенный) по полям) и выводить услуги в отсортированном виде по обобщенному рейтингу.
Такое можно сделать с помощью вашего компонента или придется серьезно доделывать/переделывать его?
weranda
28 января 2020, 09:51
0
Спасибо. Гляну на досуге.
Ну, а если кто знает другие компоненты, будет любопытно на них взглянуть.
weranda
28 января 2020, 09:36
0
Каких именно усилий, можете подсказать? Это просто стандартная настройка будет с помощью имеющихся в компоненте параметров или надо будет что-то дописывать?
weranda
05 сентября 2019, 13:50
0
Класс, спасибо за разъяснения.
Может быть у вас завалялась ссылочка на полезный материал по этим плейсхолдерам. Посмотрел информацию по ссылке, данной вами выше, — она скудна и без объяснений подобно вашим не разберешься.
weranda
05 сентября 2019, 13:39
0
Правильно ли я понял? — Сначала в шаблоне один раз перед нужными полями мы запускаем сниппет с именем Snippet, передаем в него нужные нам поля (content,description,tv.tvname). Затем сниппет запускается, включается прописанная в нем логика (делает замены) и закрепляет результат за некими переменными, именуемыми по именам переданных полей (content,description,tv.tvname). После этого в шаблоне становится доступными результаты работы сниппета, доступ к которым можно получить через общий префикс и имена, которые были заданы в сниппете.
Я просто никогда раньше с плейсхолдерами не сталкивался.
weranda
05 сентября 2019, 13:03
0
Возможно, именно этот момент мне и непонятен. Как получить нужные поля, обработать их — это понятно, а вот потом как вывести все обработанное в одном месте в разные поля — вот это вопрос.
weranda
05 сентября 2019, 12:42
0
Ладно, попробую еще раз объяснить.

Имеем три поля:
//Поле 1
зима, весна, лето, осень

//Поле 2
весна и лето — теплые времена года

//Поле 3
зима и осень — прохладные времена года. пьем кофе.

Имеем список замен (список будет исключительно в единичном экземпляре):
зима —> зима (холод)
весна —> весна (тепло)
лето —> лето (тепло)
осень —> осень (холод)
кофе —> кофе (горячий)

После преобразования должно получиться вот что:
//Поле 1 (4 совпадения, 4 замены)
зима (холод), весна (тепло), лето (тепло), осень (холод)

//Поле 2 (4 совпадения, 0 замен, так как замены уже были)
весна и лето — теплые времена года

//Поле 3 (1 совпадения, 1 замена)
зима и осень — прохладные времена года. пьем кофе (горячий).

Т. е. должна быть только одна замена из списка замен по всем полям, если их объединить.
weranda
05 сентября 2019, 11:57
0
Либо я не понимаю, либо плохо объяснил.
Давайте попробую еще раз. Для примера возьмем всего два поля и две замены. В первом и во втором полях встречаются по два искомых для замены слова. Используя первый вариант (через один и тот же модификатор для каждого поля), в каждом из двух полей мы получим по две замены. Этот вариант не подходит, так как в нем должно было бы замениться только два первых совпадения, а они встречаются в первом поле. Во втором же поле замен не должно было быть, так как по одной из них уже сделано было в первом поле.
Список замен один, общий для всех полей. Таким образом первый вариант не подходит из-за возможности повторения множественности замен, а второй — из-за того, что список замен общий для всех полей.
Третий предложенный вами вариант с обработкой всего кода страницы тоже не подход, так как нужна обработка данных именно в некоторых полях, а не во всех.
weranda
05 сентября 2019, 11:24
0
Малость не понял. Поясню что я имел в виду выше. Допустим, есть список замен из 100 слов. Мне без разницы где встретится слово — в первом поле, втором или третьем, но если оно есть на странице в любом из них, то должно быть заменено. Я так понял, что вы предлагаете каким-то образом разделить список замен так, чтобы для каждого из поля (content, dexctiption и пр.) не было пересечений в списках замен. Вы это предлагаете? Или же вы предлагаете добавлять дополнительную логику и в ней проверять были ли замены в предыдущем блоке для следующего?
weranda
05 сентября 2019, 11:06
0
Над этим вариантом размышлял. Если надо будет сделать только по одной замене слова на странице, то с прикреплением одного и того же модификатора к нескольким полям замены будут проведены минимум два раза на одной страницы при условии, что искомые для замены слова будут встречаться сразу в двух полях. Поэтому этот вариант не подходит.
weranda
13 июня 2019, 13:31
0
В общем, выше было три или четыре рабочих варианта. Если вы в них не увидели вам подходящего, пользуйтесь пятым/третьим вариантом Павла)
weranda
13 июня 2019, 12:56
0
Выше есть несколько конкретных решений. Специально для вас: два предельно ясных варианта, готовых, дал Павел Романов. Я же лишь привел ссылку тоже на готовое решение с примерами. Зачем их дублировать — я не понимаю.