Vitaliy
A
A
A
A
есть мысли?
Vitaliy
есть мысли?
А у файлах, блоках що? Ті, які наприклад не виводяться
Vitaliy
есть мысли?
Ще в самій адмінці глянь вкладку конфігурацій плагіна, там є поля в яких доках, шаблонах показувати
A
у меня проблема в том что сама вкладка "Блоки страницы" не появляется при редактировании страницы
A
A
Vitaliy
A
Vitaliy
А версія плагіна яка? Здається в новій інше трохи, не за пк, не гляну зараз
A
1.3.16
Vitaliy
Добрі люди, питання для обговорення більше. Що зараз є найефективнішим проти спаму через форми?
𝓔𝓾𝓰𝓮𝓷𝓮
Привіт)
𝓔𝓾𝓰𝓮𝓷𝓮
Я колись ставив гуглу антиспам 3.0, може і норм, але мені не дуже зайшло.
Теж думав тиждень, що його і куди. Зупинився на трех варіантах відразу всі три і включив
1. Перевірка схованого поля, зробив поле, сховав його в формі, назвав
<input type="email" class="n-message" name="n-message" value="">, в стилях указав display: none; і перевіряю через hooks, "якщо заповнено" даю відповідь 200 ок, але є ньюанс)
<?php
if ($_POST['n-message']) { // трололошка якась))
echo $FetchIt->success('Все гуд чувак');
die();
} else {
return true;
}
2. Перевірка самого повідомлення на знаки які не потрібні
// Визначаємо значення службових змінних за замовчуванням
$success=true;
$haserror=false;
// Масив заборонених фрагментів рядків
// Якщо в якому-небудь полі форми зустрінеться один з нижче перелічених фрагментів, то далі обробляти повідомлення не будемо
$forb=array(
'@',
'http',
'https',
'://',
'www',
'Test',
'test'
);
// Проходимо по масиву заборонених фрагментів
foreach ($forb as $f){
if($haserror==false){ // Якщо ще не зустрівся заборонений фрагмент
$haserror=strpos($value,$f); // Перевіряємо його в значенні поточного перевіряємого поля вводу
}
}
// Якщо була виявлена помилка
if ($haserror!=false) {
$validator->addError($key,'Недопустиме значення!');
$modx->log(xPDO::LOG_LEVEL_ERROR,'Тут живе какашка: IP='.$_SERVER['REMOTE_ADDR'].' Зміст: '.$key.': '.$value);
$success=false;
}
// Повертаємо результат роботи валідатора
return $success;
Ну це на прикладі MODX, але думаю і на EVO можно зробити
3. csrf_token, типу такого (https://laravel.com/docs/11.x/csrf), генерація токена, пишемо в кукі, перевірка токена перед відправленням повідомлення, але думаю що можно і не csrf_token а генерувати случайні літери та цифри,
use Illuminate\Support\Str;
// Генеруємо випадковий рядок довжиною 8 символів
$randomString = Str::random(8);
а то токени веліки))
𝓔𝓾𝓰𝓮𝓷𝓮
за пів року зовсім без спаму
𝓔𝓾𝓰𝓮𝓷𝓮
раніше стояв гугляка другої версії, але спам він пропускав жуть
Vitaliy
𝓔𝓾𝓰𝓮𝓷𝓮
Так і є
Гугляку викинути
Ну можливо третю версію ставити, але там мені не сподобалося, він конфліктує, якщо на сторінках декілька форм
Да і політика їх, не дуже
𝓔𝓾𝓰𝓮𝓷𝓮
А ось перевірка скритого поля, та сертифікат.
Норм
𝓔𝓾𝓰𝓮𝓷𝓮
Можливо навіть без другого пункту буде норм
Vitaliy
Дякую за відповіді
Vitaliy
Я колись ставив гуглу антиспам 3.0, може і норм, але мені не дуже зайшло.
Теж думав тиждень, що його і куди. Зупинився на трех варіантах відразу всі три і включив
1. Перевірка схованого поля, зробив поле, сховав його в формі, назвав
<input type="email" class="n-message" name="n-message" value="">, в стилях указав display: none; і перевіряю через hooks, "якщо заповнено" даю відповідь 200 ок, але є ньюанс)
<?php
if ($_POST['n-message']) { // трололошка якась))
echo $FetchIt->success('Все гуд чувак');
die();
} else {
return true;
}
2. Перевірка самого повідомлення на знаки які не потрібні
// Визначаємо значення службових змінних за замовчуванням
$success=true;
$haserror=false;
// Масив заборонених фрагментів рядків
// Якщо в якому-небудь полі форми зустрінеться один з нижче перелічених фрагментів, то далі обробляти повідомлення не будемо
$forb=array(
'@',
'http',
'https',
'://',
'www',
'Test',
'test'
);
// Проходимо по масиву заборонених фрагментів
foreach ($forb as $f){
if($haserror==false){ // Якщо ще не зустрівся заборонений фрагмент
$haserror=strpos($value,$f); // Перевіряємо його в значенні поточного перевіряємого поля вводу
}
}
// Якщо була виявлена помилка
if ($haserror!=false) {
$validator->addError($key,'Недопустиме значення!');
$modx->log(xPDO::LOG_LEVEL_ERROR,'Тут живе какашка: IP='.$_SERVER['REMOTE_ADDR'].' Зміст: '.$key.': '.$value);
$success=false;
}
// Повертаємо результат роботи валідатора
return $success;
Ну це на прикладі MODX, але думаю і на EVO можно зробити
3. csrf_token, типу такого (https://laravel.com/docs/11.x/csrf), генерація токена, пишемо в кукі, перевірка токена перед відправленням повідомлення, але думаю що можно і не csrf_token а генерувати случайні літери та цифри,
use Illuminate\Support\Str;
// Генеруємо випадковий рядок довжиною 8 символів
$randomString = Str::random(8);
а то токени веліки))
є різниця чи на php чи js реалізовувати?
Vitaliy
Добрі люди, є такий модуль SimpleTube, користувався пару разів, але ось вирішили закинути туди відео shorts, модуль не дозволяє такого типу. Може є хаки якісь, чи зразу своє рішення писати сідати?)
Vitaliy
@Dmi3yy https://www.youtube.com/@EvolutionCMS2 це саме актуальний канал по 3 й версії ?
Dmytro
Dmytro
Ще багато інфи тут є
@evolutioncmsnews
Yevhenii
Підкажіть, як працює мультисайтовість? Дивився і в адмінці і в документації, не бачу, ткніть носом плз
Yevhenii
На головному лендінгу прямо по центру ця можливість заявлена, а де шукати невідомо
Dmytro
@seigerit тут якраз тобі питання по фічі з мультидеревами
Yevhenii
Serhii
Ну з мануалами у нас біда. Колись робив, але то було давно. І зі старою адмінкою давно вже не працюю.
Serhii
Якщо хтось може, то нехай підкаже людині.
Yevhenii
Yevhenii
Serhii
Наразі я розробляю сайт з мультидоменом та єкомерц. Поки що не закінчив, хоча основний функціонал наче є. Я б спробував на тестовому чи задовольняє потреби на даний момент, а тоді вже й на прод.
Yevhenii
Andrey
Може в когось є не складна і не термінова робота? Готовий взятися навіть безкоштовно. Після 22го року не працював так як працював з руснею, та і не до того було. Хочу спробувати чи годен ще на щось.
Віталій Пушкарьов 🇺🇦
𝓔𝓾𝓰𝓮𝓷𝓮
Зачпунял
Dmytro
Заблочів нафіг
Віталій Пушкарьов 🇺🇦
Вітаю, товариство!
Може хтось знає — при встановленні через composer на хостингу виникає помилка:
Fatal error: Duplicate declaration of static variable $i in /home/ ... /core/functions/actions/mutate_content.php on line 857
Версії PHP всюди 8.3.
Віталій Пушкарьов 🇺🇦
Роблю все, як у Дмитра на відео в Ютубі
Dmytro
Судячи за все у вас не актуальна версія файлу
Dmytro
Бо на гіт все ок
Dmytro
Порівняйте чи однаковий контент файлу
https://github.com/evolution-cms/evolution/blob/3.2.x/core/functions/actions/mutate_content.php#L857
Віталій Пушкарьов 🇺🇦
Дякую! Зараз перевірю.
Віталій Пушкарьов 🇺🇦
Віталій Пушкарьов 🇺🇦
Тоді як правильно встановити:
Я робив так:
composer create-project evolutioncms/evolution:3.2.4 . --remove-vcs
Якщо писати 3.x-dev — не пускає...
Віталій Пушкарьов 🇺🇦
Встановив через браузер, все добре.
Дякую за відповіді!
Віталій Пушкарьов 🇺🇦
Сорі за назойлівісь, де можна взяти актуальні докі?
Віталій Пушкарьов 🇺🇦
BaseController::$evo is deprecated
Dmytro
Взагалі всі ресурси які живі можно знайти тут по лінкам:
https://evo.im
Віталій Пушкарьов 🇺🇦
Дякую!
Dmytro
І ось канал новин там можно пошукати по історіі там доволі багато інфи є
@evolutioncmsnews
Volodymyr
Всім привіт, можливо тут є профі в elasticsearch?
Artur
останній реліз відповідно до Гітхабу https://github.com/evolution-cms/evolution/releases це 3.2.4,
там PHP 8.3 не працює через PHP Fatal error: Duplicate declaration of static variable $i in ..../evolution-3.2.4/core/functions/actions/mutate_content.php on line 857
пропоную зробити мінорний реліз з фіксом, бо 8.3 вже давно вийшла, щоб ті хто останню версію з гітхаба ставлять не стикалися з цим, бо неочевидно
Serhii
Хотів оновити ядро Laravel до 11 версії, але поки що на маю на те час.
Null
https://github.com/evolution-cms/evolution/releases/tag/3.2.5
𝓔𝓾𝓰𝓮𝓷𝓮𝓥
A
Serhii
Друзі. Настав час оплати хостінга. Накиньте донатів плз.
grvit
Serhii
𝓔𝓾𝓰𝓮𝓷𝓮
+100
Serhii
Дякую
Vadym
+100
𝓔𝓾𝓰𝓮𝓷𝓮
Запускаємо челендж збір "+100 на EVO" ))
𝓔𝓾𝓰𝓮𝓷𝓮
Хлопці та дівчата)
Бодрого усім вечора!
Може у когось є бажання чи час, треба аплікуху на телефон написати?
Сама аплікуха дуже проста, форма зворотнього зв'язку.
𝓔𝓾𝓰𝓮𝓷𝓮
Чи краще з GPT поспілкуватися?
Serhii
Artur
Хлопці та дівчата)
Бодрого усім вечора!
Може у когось є бажання чи час, треба аплікуху на телефон написати?
Сама аплікуха дуже проста, форма зворотнього зв'язку.
якщо дійсно форма, є безкоштовний конструктор, https://www.zoho.com/creator/pricing-comparison.html , тобто можете самі на Zoho створити, під веб, Android та iOS, не потребує кодингу.
Там є обмеження звичайно в безкоштовній версії, але платна теж недорога. Ну або повністю самому код писати з ionic, якщо знаєте html/css, чи на freelancehunt пошукати людину якщо на раз треба.
Serhii