Во всяком случае Babel без вопросов работает с 1.х версией Evo.И, если есть готовая версия сайта для одного языка, не очень-то и геморно добавить другие языки
Уважаемый Dmi3yy в той теме так и писал, что можно выбрать между EvoBael и bLang. Но второй подходит больше для простых сайтов-галерей и его проще конфигурировать. Я почитал о bLang и согласен, это самое оно. Но если не получится решить вопрос, то буду ставить EvoBabel, конечно. Потому что задачу в любом случае надо как-то решать :-/
Может стоит обратить внимание на EvoBabel?
Dmi3yy, а я вижу, что вы — один из соавторов этого прекрасного плагина bLang. Я уже обновил до 1.4.17, поставил плагин-модуль-сниппет, но тут начался затык, да такой что сайт с Error 500 слетал. Стал спрашивать у людей, меня научили, как вернуть всё взад. Но как заставить работать никто не знает. А форумов по bLang, где можно спросить у знающих, я не нашел.
Можно вам задать по нему вопрос? Если там что-то сложное, то скажете, что там долго. Но, может, там всё легко решается
В первом Яндекс или Гугл используется только для автоперевода, по умолчанию не используется.

Ну а по остальному зависит от структуры если это каталог или интернет магазин то проще bLang если же нет то и evobabel очень хорош
Спасибо вам, Dmi3yy! Первое не подходит, я не смогу Яндекс использовать. Но вот второе, думаю, самое оно!
Есть 2 решения:
github.com/extras-evolution/blang (в рево есть похожий когда на базе ТВ переводны в одном документе)
github.com/webber12/evobabel-0.2 (собственн как и бабел в рево)

ну и рекомендую обновить до 1.4 версии проблем с обновлением с 1.0.15 не должно возникнуть )
Не знал о существовании группы, полезно, благодарю!
Получилось так: &filters=`AND(tv:stat:like:[*stat*])`
  • avatar 3fir
  • 1
Напишите сюда, вам помогут быстрее
t.me/evo_cms
Пробую так &filters=`AND(tv:stat:like:stat)` не получается.
  • avatar 3fir
  • 1
Там LIKE еще есть
Ошибся. Так работает &filters=`AND(tv:stat:gt:stat)` только, если совпадают в tv параметре «stat» цифры, а если слова, похожие не выводятся.
Не знаю к сожалению php, подбираю методом тыка (
Точно. Спасибо!
Так работает: &filters=`AND(tv:stat:gt:stat)`
  • avatar 3fir
  • 1
  • avatar SerNeo
  • 0
Привет,
решил написать тут так как проблема связанно как раз с отправкой формы аяксом.

У меня есть старый проект на 1.4.x где форма работает через плагин и все работает нормально. Новый проект решил постаивть на Evolution 3.x и использовать старых подход через плагин evoAjax сделал по аналогии, но не использовал jQuery.ajax() а использовал fetch().
И никак не могу заставить заработать.
Ошибка в консоли:
<code>domain.loc/contactajaxform 404 (Not Found)</code>

JS:

<code>const form = document.getElementById("contactForm");
if (form) {
	form.addEventListener("submit", handleSubmit)
}
async function handleSubmit(event) {
	event.preventDefault();

	const dataForm = new FormData(event.target);

	fetch(event.target.action, {
		method: form.method,
		body: dataForm
	})
	.then(response => {
		console.log("response", response);
		response.json();
	})
	.then(result => {
		console.log("result", result);
	})
	.catch(error => {
		console.log("error", error);
	});

}</code>

Шаблон формы:

<code><form id="contactForm" method="post" action="[(site_url)]contactajaxform">
    <input type="hidden" name="formid" value="contactForm">
    <div class="alert d-none" id="contactMessage">[+form.messages+]</div>

    <div class="form-row">
        <div class="form-col form-col-half">
            <div class="form-group">
                <label for="c_name">Full name *</label>
                <input type="text" class="form-control [+c_name.errorClass+][+c_name.requiredClass+]" name="c_name" id="c_name" value="[+c_name.value+]">
                [+c_name.error+]
            </div>
        </div>
        <div class="form-col form-col-half">
            <div class="form-group">
                <label for="c_email">Email *</label>
                <input type="email" class="form-control [+c_email.errorClass+][+c_email.requiredClass+]" name="c_email" id="c_email" value="[+c_email.value+]">
                [+c_email.error+]
            </div>
        </div>
        <div class="form-col form-col-full">
            <div class="form-group">
                <label for="c_message">Message *</label>
                <textarea class="form-control [+c_message.errorClass+][+c_message.requiredClass+]" rows="4" name="c_message" id="c_message">[+c_message.value+]</textarea>
                [+c_message.error+]
            </div>
        </div>
        <div class="form-col form-col-full form-col-submit text-center text-lg-end">
            <button type="submit" class="btn btn-outline-dark btn-hover-green btn-lg fw-bold btn-mobile-wide" id="contactFormSubmit">Send message</button>
        </div>
    </div>
</form></code>

evoAjax плагин (событие на OnPageNotFound)

<code><?php
if (empty($_SERVER['HTTP_X_REQUESTED_WITH']) || strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) != 'xmlhttprequest') {
    return;
}

switch($_GET['q']){
	case 'contactajaxform':
		echo $modx->runSnippet('FormLister', array(
			'debug'=>'0',
			'formid' => 'contactForm',
			'prepareProcess'=>'mailsaverFormLister',
			'to' => 'test@test.com',
			'from' => 'test@test.com',
			'parseMailerParams'=> '1',
			'replyTo'=> '[+c_email.value+]',
			'subjectTpl' => '@CODE: Contact form message: [+c_subject.value+], from: ' . $modx->config['site_name'] ,
			'errorClass'=> ' is-invalid',
			'requiredClass'=> ' is-invalid',
			'rules'=> '{
					"c_name":{
						"required":"Enter your name"
					},
					"c_email":{
						"required":"Enter your email",
						"email":"Email is not valid"
					},
					"c_message":{
						"required":"Enter your message"
					}
				}',
			'submitLimit'=> '10',
			'protectSubmit'=> '0',
			'lang' => 'english',
			'formControls'=>'subject',
			'messagesOuterTpl'=>'@CODE:<div class="alert alert-danger" role="alert">[+messages+]</div>',
			'errorTpl'=>'@CODE: <div class="invalid-feedback">[+message+]</div>',
			'successTpl'=> 'ContactFormSuccess',
			'formTpl' => 'ContactForm', 
			'reportTpl'=>'ContactFormReport',
			'removeEmptyPlaceholders' =>'1',
			'prepare'=> 'checkSpamTimeFL'
		));
		die();
		break;
}</code>

Подскажите в чем может быть проблема? Такое ощущение что плагин вообще не срабатывет.
В продолжении этой темы, к ресурсам прикрепил TV galleryalbumlist (gall-item) !Gallery? &album=`*gal-item` &thumbTpl=`gal-item-tpl`
Подскажите, как вывести на главную страницу миниатюры альбомов всех ресурсов?
типа
[ [!Gallery? &thumbTpl=`section_gall_container_tpl` &album=`[ [+gal-item] ]` &limit=`2` &includeTVs=`gall-item`] ]
  • avatar webber
  • 0
стилями css
А как убирается кнопка «Сбросить фильтр»?
[!eFilter? &css=«0» &ajax=«1» &cfg=«myconfig»!]
[+eFilter_form+]
Сюда можно добавить какую-то команду для ее отключения?
Убирать ее из файла myconfig не хочется т.к. на другой странице сайта она нужна.
Требуется установить причину 403 ошибки.
1) предлагаю проверить возможность выполнения скриптов по этому пути. Просто создай по пути vezuviy52.ru/assets/modules/editdocs/ файл phpinfo.php
<?php
phpinfo();
?>

и проверь работает он или нет.
Если работает, то настройки сервера не причем.
будем копать дальше.
Выставлял права 777, не спасло.