• avatar JoniDES
  • 0
У меня такая проблема была пока в настройках модуля evoBabelLexicon не прописал id шаблона языка и id TV языковых связей и так же прописал в настройках плагина evoBabel. Всегда забываю внести эти пункты в какую-то одну из этих конфигураций и думаю почему же не работает :(
  • avatar Dreamer
  • 0
Ресурс толком так и не заработал. Чтобы попасть на него, нужно кучу апишников перебрать, везде какие-то блокировки. Зачем это сделано? Просто убивается хороший ресурс с хорошей накопленной базой знаний, которая могла бы приносить пользу людям.
Неужели никто не сталкивался?
в поле алиас дописать
sitemap.xml

ну и тип документа поставить что это xml
Во всяком случае 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`] ]