Эрадж Шамс

Эрадж Шамс

Был в сети 13 июля 2022, 22:03
Заказы принимаю
+1
Точно, уже решил проблему. На будущее:
для локализации в виде en.site.com нужно лишь включить «автоподдомены», это когда поддомены создаются автоматически (не нужно создавать алиасы) или, если на хостинге нет функции «автоподдомены» добавить вручную alias (псевдоним, синоним) en.домен.зона и убрать «главное зеркало» основного домена.
А в htaccess прописать редирект домена и всех поддоменов с www на без www
RewriteCond %{HTTP_HOST} ^www\.(.*) [NC]
RewriteRule ^(.*)$ http://%1/$1 [R=301,L]
0
Привет.Ну я так решил задачу
Создаем сниппет TVcheckbox
<?php
$tv = $modx->getObject('modTemplateVar', array('name' => $name));
$elements = $tv->get('elements');
$element = explode('||', $elements);
foreach($element as $e) {
  list($elName,$elId) = explode("==", $e);
  if ($elId == $input) {
    $checked = 'checked';
  } else {
    unset($checked);
  }
  echo '<input type="checkbox" name="'.$name.'[]" id="ticket-'.$name.'-'.$elId.'" value="'.$elId.'" '.$checked.' >
<label for="ticket-'.$name.'-'.$elId.'">'.$elName.'</label>';
}
А в чанке вывода TicketForm выводишь TV так [[+TVпараметр:TVcheckbox]]

Только есть нюанс: когда выделяешь несколько галочек при обновлении эти галочки пропадают (хотя в базу они записались). Если ничего не трогать, они не перезапишутся при сохранении, но если поставить, скажем, одну галочку, то другие слетят. Не знаю ока как решить эту задачу
0
Здравствуйте, вроде получилось. Правда я переработал в checkbox. Сниппет checkbox
<?php
$tv = $modx->getObject('modTemplateVar', array('name' => $name));
$elements = $tv->get('elements');
$element = explode('||', $elements);
foreach($element as $e) {
  list($elName,$elId) = explode("==", $e);
  if ($elId == $input) {
    $checked = ' checked';
  } else {
    unset($checked);
  }
  echo '<input type="checkbox" name="'.$name.'[]" id="ticket-'.$name.'-'.$elId.'" value="'.$elId.'" '.$checked.'>
<label for="ticket-'.$name.'-'.$elId.'">'.$elName.'</label>';
}
На странице редактирования вывожу
[[+naturale:checkbox]]
Галочки выводятся, результаты проставляются. Ставлю одну галочку, сохраняю, обновляю, галочка стоит! И вот тут две проблемы: если я поставлю еще одну галочку и выберу два или больше вариантов, то checked исчезает у всех, то есть как будто ничего не проставлено, хотя на самом деле в базе они стоят.

И вторая проблема: если я попытаюсь снять галочку, ничего не происходит. Как отправить снятие галочки?

Спасибо за этот вариант! из всех, которые я перепробовал — с этим удалось зайти дальше всего) если решу 2 эти вопроса — то выложу рабочий вариант редактирования через ticketform tv-параметра множественного выбора checkbox
0
Вечер добрый. Спасибо за обновление. Спама нет. Только теперь не приходят письма с подтверждением регистрации. Сначала думал, что с почтой на сервере что-то не так, потом и так и сяк переменял email адреса ms2_email_manager и emailsender. Все тщетно. Не знаю куда копать.
0
возможно можно просто добавить пустое поле, с проверкой на валидацию, но не совсем понимаю как это сделать. Вставил в вызов Office
&validate=`site_message:blank`
А в форму регистрации пустое поле
<input style="display:none" type="text" name="site_message" value="" />
но не работает(