Борис И

Борис И

С нами с 20 апреля 2014; Место в рейтинге пользователей: #71
Andrei D.
14 мая 2016, 21:50
1
+2
До недавнего времени мне помогало такое решение, но сейчас роботы поумнели
&hooks=`spam,email`
&validate=`additionalemail:blank`

<input type="hidden" name="additionalemail" value="" />
<input type="hidden" name="nospam:blank" value="" />

Пришлось добавить кнопку «Я не робот», которая в div подгружает кнопку отправить.
Причем, эта кнопка находится вне тегов {form} {/form}
<script>
$(document).ready(function() {
$(".norobot").click(function() {
$(".norobotarea").html('<button type="submit" class="button transition-03 smooth">Отправить</button>');
});
});
</script>

Капчу совсем не хотелось ставить
Andrei
25 апреля 2016, 12:24
1
0
В общем, у меня вопрос с установкой решился при помощи коррекции .htaccess.

Я убрал строки, которые делают редирект без/с слешем. А именно:
RewriteBase /
RewriteCond %{HTTP_HOST} (.*)
RewriteCond %{REQUEST_URI} /$ [NC]
RewriteRule ^(.*)(/)$ $1 [L,R=301]
После этого все установилось. На данный момент у меня не работает загрузка приложений, но это видимо из-за изменения версии php, теперь жду, когда оператор поменяет версию на прежнюю.
Николай Савин
02 апреля 2016, 21:09
1
+1
Ну обычные ресурсы вот так создаются.
$newResource = $modx->newObject('modResource');
    // Заполняем нужные значения
    $newResource->set('pagetitle', $pagetitle);
    $newResource->set('longtitle', $longtitle);
    $newResource->set('template',1);
    $newResource->set('isfolder',0);
    $newResource->set('hidemenu',1);
    $newResource->set('parent',1);
    $newResource->set('published',1);
    $newResource->set('context_key', 'web');
    $newResource->set('publishedon',date('Y-m-d H:i:s'));
    $newResource->set('alias', $alias');
//  сохраняем
    $newResource->save();
Обязательное значение тут только pagetitle и alias (если у вас включен frendly URL)
Тикет это тот же ресурс, но поле class по другому заполнено
Для создания тикета вроде достаточно добавить поле class = 'tickets'
Вы можете вручную создать один тикет и один стандартный ресурс и посмотреть в базе данных какие поля как заполнены и в чем разница
Кирилл
03 марта 2016, 12:17
1
0
Если нужна только версия сайта https, а с http будет редирект, я использую следующий вариант: заходим в редактирование контекста (web), настройки контекста, добавляем новый ключ:

Ключ: site_url
Пространство имен: core
Значение:
https://site.ru/
(заменить на свой url)

base href оставляем по умолчанию:
<base href="[[++site_url]]" />
@ndrew
29 февраля 2016, 15:56
1
0
Можно еще проще:
[[*id:ne=`77`:then=`[[pdoCrumbs]]`]]
Сергей
29 февраля 2016, 14:13
1
+1
Я бы использовал условие в MODX. В pdoCrumbs, как я понимаю, нет такого скрытия как вы написали. А &exclude просто убирает ресурс из выдачи.
[[*id:is=`77`:then=``:else=`[[pdoCrumbs?]]`]]
brioni
26 февраля 2016, 19:31
2
0
Решение
[[!+modx.user.id:is=`[[*createdby]]`:then=`<a href="/create?tid=[[*id]]">Редактировать</a>`:else=`
	[[!+modx.user.id:memberof=`Administrator`:then=`<a href="/create?tid=[[*id]]">Редактировать</a>`]]
`]]
Евгений Шеронов
25 февраля 2016, 00:54
1
+2
[[*template:is=`5`:then:=`src="[[*image]]"`:else=`src="[[pthumb? &input=`[[pdoResources:default=`[[*image]]`? &class=`TicketFile` &where=`{"parent":[[+id]]}`  &sortby=`createdon`  &sortdir=`ASC`  &limit=`1`  &tpl=`@INLINE [[+url]]`]]` &options=`w=420,h=280,q=95`]]"`]]
Запутаться можно в вашем выводе изображения)
brioni
23 февраля 2016, 12:20
2
0
Получилось с первого раза, тупо заменив параметр &input внутри вызова pthumb:
<img src="[[pthumb? &input=`[[pdoResources:default=`[[*image]]`? &class=`TicketFile` &where=`{"parent":[[+id]]}`  &sortby=`createdon`  &sortdir=`ASC`  &limit=`1`  &tpl=`@INLINE [[+url]]`]]` &options=`w=79,h=54`]]">
Рассчитывал на то, что придется создавать обрезанные превью для каждого размера фотки как описано здесь, а затем выводить их в нужных местах сайта — но оказалось всё гораздо проще. Чему я очень рад :)
Антон Пастухов
22 февраля 2016, 00:27
2
+2
Сделать сниппет splitText c таким кодом:

<?php

$input = explode(".", $input);
$output = "<p>";
$count = 0;

foreach ($input as $i) {
    $output .= "$i.";
    $count += strlen($i);
    
    if ($count > 400) {
        $output .= "</p><p>";
        $count = 0;
    }
}

return $output . "</p>";
2. Вызвать как фильтр вывода для нужного текста: [[*content:splitText]]