Максим Кузнецов

Максим Кузнецов

С нами с 01 июля 2013; Место в рейтинге пользователей: #33
16 марта 2016, 14:57
-1
Ну, как вариант можно:
— залезть в бд и поискать в таблицах вышеописанный плейсхолдер
— установить modDevTools (если не ошибаюсь, там есть поиск по чанкам и шаблонам)
16 марта 2016, 14:47
+1
Для всех остальных плейсхолдеров ([[+results]], [[+total]], ...), относящихся к mFilter2, нужно тоже прописать новый префикс «my.».
16 марта 2016, 14:40
+1
Посмотрите все-таки документацию, что я скинул.

В сниппете дописать параметр («my.» взят для примера, можно прописать любой):
&toPlaceholders=`my.`

В html прописать:
<div class="это просто любой ваш контейнер, куда нужно запихнуть фильтры">
	[[+my.filters]]
</div>
16 марта 2016, 14:18
+1
Если я вас правильно понял, вам подойдет параметр &toPlaceholders (в запущенных случаях &toSeparatePlaceholders) и дальше раскидать требуемые детали mFilter2 в нужные места верстки.
16 марта 2016, 14:17
+1
Прописать там плейсхолдер для него — [[+filters]].
16 марта 2016, 14:11
+1
Даже не знаю, что вам посоветовать — это достаточно простая и базовая область MODX'a, поэтому о них особо ничего не расписано, разве что тут.

(на всякий случай): чтобы попасть в просмотр системных настройек — выберите шестеренку в верхнем меню админки и перейдите по пункту «системные настройки».
16 марта 2016, 06:14
0
Вы можете исключить текущий раздел таким способом:
&resources=`-[[*id]]`
16 марта 2016, 06:11
+1
Т.е. вам нужна возможность фильтрации только для категорий товаров?

В таком случае попробуйте использовать параметр &where:
&where=`{"class_key":"msCategory"}`
16 марта 2016, 06:08
+1
В вопросе содержится ответ: ваш плейсхолдер [[+resource]] не возвращает или не успевает возвратить айди страницы (числом), для которой нужно сформировать url.

Если вы используется самописный сниппет или конструкцию вида [[~[[+resource]]]] — проверяйте возвращаемое значение.
Если вы используется плейсхолдер внутри фенома — получайте его через {$resource} или {$_modx->getPlaceholder('!resource')}.
16 марта 2016, 05:42
1
+2
Что касается порядкового номера — просто создайте произвольную системную настройку, например «Всего отправлено сообщений» (formit_total) и дергайте ее непосредственно в хуке:

$formit_total = $modx->getObject('modSystemSetting', 'formit_total');
$new_total = intval($formit_total->get('value')) + 1;

$formit_total->set('value', $new_total);
$formit_total->save();
$modx->cacheManager->refresh(array('system_settings' => array()));
16 марта 2016, 05:27
+1
В таком варианте скорее всего данные будут генерироваться 1 раз в момент инициализации сниппета. И на выходе может получиться несколько писем с одинаковым номером/некорректной датой, при условии, что отправитель открыл страницу и ушел, а через недельку — решил таки отправить данные.

Лучше подобную задачу реализовывать через хуки.
12 марта 2016, 15:25
0
Цеплять через leftJoin к сниппету вызова списка альбомов.
09 марта 2016, 16:59
+1
Нет, не обязательно. Достаточно перенести директории и прописать новые пути в следующих файлах:
/core/config/config.inc.php
/config.core.php
/connectors/config.core.php
/manager/config.core.php

(manager и connectors, соответственно будут расположены там, где вы их разместили)
09 марта 2016, 16:58
0
Вообще — согласен, сам не представляю, как поисковики узнают о системных папках со фронта, если они там нигде не упоминаются.

Но порой в темах возникают вопросы, связанные с тем, что эти папки все-таки проиндексировались.
Как — не интересовался.
09 марта 2016, 16:34
+1
Вариант 1:
— вынести директории за пределы доступной с браузера области (тогда robots.txt можно вообще не трогать)

Вариант 2:
— создать папку с нейтральным названием, допустим, system (и закрыть к ней доступ через robots.txt)
— засунуть в нее переименованные manager, connectors
07 марта 2016, 19:26
0
bezumkin.ru/sections/tips_and_tricks/2439/ — пример уже вместе с кнопкой-переключалкой. Только замените «языки» на «города».

Если же нужно автоматически определять город по геолокации, то переключалку можно реализовать через GeoLocation.
07 марта 2016, 18:56
+1
Перехватывайте не плейсхолдер pdoPage, а непосредственно get-параметр «page»
(или любой другой, который у вас выставлен):
[[#GET.page:is=`1`:then=`...`:else=`...`]]
05 марта 2016, 01:33
+3
Тогда уж лучше со значением 0..)

А вообще, скрытые поля на фронтэнде (при наличии вредительских желаний) легко отредактировать через консоль браузера, поэтому лучше решить задачу через плагин:

<?php
	switch ($modx->event->name) {
		case 'OnDocFormSave':
			//при желании можно дополнительно ограничить применение только для определенных шаблонов
			if ($resource->get('template') == 8 && $mode == 'new' && $resource->class_key == "Ticket") {  
             	  		 $resource->set('published', 0);
			}
			
			$resource->save();
 
		break;
	}

Вешать на событие OnDocFormSave, соответственно.
04 марта 2016, 11:46
0
Новая панель отличная.)

Вопросы:
— закладка действия — переустановка. «Дополнения Выбрано 7 из 5» — неправильно считается суммарное количество дополнений?
— можно ли прописать кастомные пути до системных директорий, не переустанавливая сам MODX?
01 марта 2016, 14:33
+2
Ну, если нужно — соберу пакет (бесплатный).
Займет некоторое время, но постараюсь уложиться в недели две-три.