Parapsixolog |
Отправлено: 16 сентября 2018 — 22:18
|
Advanced Member
Покинул форум
Сообщений всего: 487
Дата рег-ции: Сент. 2011
Репутация: 14
|
Похоже ни кто не знает, ну и ладно. Сейчас другая проблема появилась, пропадают 50% писем отправляемые движком форума.
У меня на маил бизнес был создан ящик с моим доменом, и буквально 3 дня назад вроде бы всё работало нормально, вроде бы все уведомления о приходе новых писем приходили. И вот стало половина теряться. Стал проверять уведомления и на маил, и на яндекс, и на гугле, везде плохо, а хуже всего на майле.
По совету своего хостера удалил на майле свой доменный ящик, и создал тот же в панели управления хостингом, включив dkim и spf. Результат нулевой.
Хостер стал долдонить что Настроить отправку почты через SMTP, используя ящики созданные на своем домене. И что только тогда исчезнут все проблемы.
Пересмотрел настройки exbb, и настройки панели управления хостингом, нигде нет упоминания об SMTP.
Прошу хостера помочь, и получаю ответ: Со своей стороны я могу Вам только подсказать, какие настройки нужно указывать при подключении к SMTP. Как настроить отправку через SMTP именно с Вашего сайта, это нужно уточнить Вам у разработчиков.
То есть как я понимаю, послал нахер.
Пересмотрел весь сайт http://exbb.info/community
Нашел только вот это:
http://exbb.info/community/topic...&topic=1#Q12
http://exbb.info/community/topic...79437#1304679437
http://exbb.info/community/topic...topic=52&p=5
http://exbb.info/community/topic...00950#1334500950
Но решения там нет, или я плохо смотрел.
И что делать, кто посоветует? Хостера менять, или уходить с exbb? |
|
|
Flat |
Отправлено: 17 сентября 2018 — 04:13
|
Full Member
Покинул форум
Сообщений всего: 187
Дата рег-ции: Май 2018
Откуда: Красноярский край
Репутация: 14
|
Parapsixolog пишет:Похоже ни кто не знает, ну и ладно.
Примерно представляю себе как это может быть сделано в данном продукте и объём работы.. Честно говоря я не являюсь официальным человеком, который поддерживает данную вещь. Тут вроде есть мастер, который лучше меня в этом разбирается. Кто-то же платит за данный хостинг? А зачем платить если нет поддержки? Короче, забили полностью большой и ржавый болт..
Кнопка видимо должна быть под каждым постом? Добавить кнопку легко: в соответствующем темплейте прописать лишнюю строчку. В папку im закинуть картинку с новой кнопкой. Ссылка должна вести на страницу отправки сообщения на мыло. Такая стандартная страница уже существует. Чтобы в ней была форма каптчи, надо её, эту страницу, модифицировать таким образом: проверить юзера на момент гость ли он. Если гость выводим каптчу, если нет не выводим. Но там надо ещё разбираться какие зависимости вылезут и где..
Вот что значит не расширяемый код! Приходится модифицировать исходные тексты, а не общие настройки данных, а чтобы их модифицировать нужно хорошо разбираться в их работе! Отсутствуют какие либо соглашения и пр..
(Добавление)
Если по уму делать, то закинул файл с модификацией в папку и подключил её через админку. В данном случае приходится лезть в исходные тексты, причём делать это должен каждый владелец форума! Рискуя что-то там накосячить..Ну, ладно не будем о грустном..(Отредактировано автором: 17 сентября 2018 — 04:14) |
|
|
Parapsixolog |
Отправлено: 17 сентября 2018 — 12:42
|
Advanced Member
Покинул форум
Сообщений всего: 487
Дата рег-ции: Сент. 2011
Репутация: 14
|
Flat пишет:Тут вроде есть мастер, который лучше меня в этом разбирается. Кто-то же платит за данный хостинг?
Есть мастер, но появляется здесь в последнее время редко. А за хостинг этого сайта платит совсем другой человек. Так что приходиться только на свои силы рассчитывать.
Flat пишет:Короче, забили полностью большой и ржавый болт..
Вот, вот, а форум то хорош.
Flat пишет:Не волнуйтесь, попробуем это сделать - для тренировки полезно. На первом этапе добавим кнопку. Только скажите где точно она должна быть?
Flat , в кнопке в принципе вообще проблем нет, я и сам где угодно её могу сделать, и в шапке сайта, и сбоку, и под постами (установлен мод рекламы). Главное доделать форму письма, что бы и гости могли писать. Как я понимаю, правку в файл tools.php нужно вносить, либо сделать свою форму, благо скриптов в сети полно, только адаптировать их под exbb (что бы зарегистрированные пользователи не вводили каптчу)
Единственное, я не знаю, как сделать полупрозрачную кнопку по типу что сейчас в нижнем правом углу сайта "вверх". Можно такую кнопку расположить в нижнем левом углу "Напишите нам".
NordWest пишет:Parapsixolog
Давно собирался встроить в ExBB скрипт отправки по SMTP но как то не очень остро стояла проблема. Но раз вам нужно - сделаю себе и поделюсь...
Похоже это очень назрело. Письма и в спам попадают, а часть вообще не доходят. Плюс техподдержка не может грамотно настроить стандартную функцию PHP mail()
SMTP давно встроена практически во все современные форумные движки, и exbb отстаёт в этом. Так что NordWes это не просто нужно, а необходимо. И не только мне - http://exbb.info/community/topic...28793#1530828793 |
|
|
Flat |
Отправлено: 18 сентября 2018 — 10:05
|
Full Member
Покинул форум
Сообщений всего: 187
Дата рег-ции: Май 2018
Откуда: Красноярский край
Репутация: 14
|
Parapsixolog пишет:а часть вообще не доходят
Проблема ещё может быть вот в чём. Сейчас некоторые страны блокируют отправку писем на нежелательные с их точки зрения почтовые сервисы. Например, в чёрный список попали mail.ru и yandex. Раньше до известных событий всё было нормально. Я пользуюсь в таких случаях аккаунтом на gmail.com. Гугл блокировать никто не будет естественно. Так что причина может быть и в этом. Говорю по опыту, так как сам не могу зарегиться на некоторых форумах, а через гугл-аккаунт проходит.
Parapsixolog пишет:а форум то хорош
Хорош-то хорош, и всё вроде работает, и много багов уже исправлено, но вот единственная проблема с модификациями, это отпугивает многих.
Parapsixolog пишет:Единственное, я не знаю, как сделать полупрозрачную кнопку по типу что сейчас в нижнем правом углу сайта "вверх".
Полупрозрачность делается через свойства css через свойство opacity. В данном случае это реализовано так:
CODE:<div class="button-up" style="opacity: 0.7; height: 100%; position: fixed; right: 0px; top: 95%; cursor: pointer; text-align: center; color: rgb(211, 219, 228); font-weight: bold; display: block; background: none;"><img src="./javascript/up-arrow.png"></div>
Parapsixolog пишет: Как я понимаю, правку в файл tools.php нужно вносить, либо сделать свою форму, благо скриптов в сети полно, только адаптировать их под exbb (что бы зарегистрированные пользователи не вводили каптчу)
Да именно в tools.php. Свою форму не нужно, здесь достаточно некоторые изменения ввести, тогда и дизайн будет тот же самый. Вечером посмотрю, что можно сделать. |
|
|
Flat |
Отправлено: 18 сентября 2018 — 17:14
|
Full Member
Покинул форум
Сообщений всего: 187
Дата рег-ции: Май 2018
Откуда: Красноярский край
Репутация: 14
|
Посмотрел я код и сделал, то что вы хотели. Открыл для себя много нового, так что время зря не потратил. Последовательность действий следующая:
1) В папке languages/russian открываем файл lang_front_tools.php. Перед строчкой ?> вставляем:
CODE:$this->LANG['CaptchaError'] = 'Не введен или введен неверный защитный код!';
$this->LANG['CaptchaCodeForm'] = 'Защитный код формы';
$this->LANG['CaptchaCode'] = 'Защитный код регистрации';
$this->LANG['CaptchaBroken'] = 'Если Вы не видете код на картинке, то перегрузите окно браузера (Ctrl+R)';
$this->LANG['CaptchaСonfirm'] = 'Подтвердите защитный код';
$this->LANG['CaptchaNote'] = 'Введите код показанный на картинке справа.';
Предварительно выставите правильную кодировку в своём редакторе.
2) В папке templates/ваш_скин открываем файл mailform.tpl. Меняем всё что там находится на это:
CODE:<?php
echo <<<DATA
<br>
<div id="navstrip" align="left">
<img src="./templates/InvisionExBB/im/nav.gif" border="0" alt=">" /> <a href="index.php">{$fm->exbb['boardname']}</a> » {$fm->LANG['MailByBoard']}
</div>
<br>
<form method="post" action="tools.php">
<input type="hidden" name="action" value="mail">
<input type="hidden" name="dosend" value="yes">
<input type="hidden" name="member" value="{$user_id}">
<table cellspacing="1" cellpadding="4" border="0" align="center" class="tableborder" width="70%">
<tr>
<td class="maintitle" colspan="2"><img src="./templates/InvisionExBB/im/nav_m.gif" border="0" alt=">" width="8" height="8" /> {$fm->LANG['SendMailTo']} {$user['name']}</td>
</tr>
<tr>
<td class="pformleft" align="right"><b>{$fm->LANG['Topic']}</b></td>
<td class="pformright"><input type="text" name="subject" size="45" maxlength="100" tabindex="2" value="" /></td>
</tr>
<tr>
<td class="pformleft" align="right" valign="top"><b>{$fm->LANG['EmailMessage']}</b></td>
<td class="pformright"><textarea name="message" rows="15" cols="35" wrap="virtual" style="width:450px" tabindex="3"></textarea></td>
</tr>
DATA;
if($fm->exbb['anti_bot'] === TRUE && $fm->user['id'] === 0)
{
echo <<<DATA
<tr>
<td class="pformleft"><b>{$fm->LANG['CaptchaCode']}</b><br /><span class="desc">{$fm->LANG['CaptchaBroken']}</span></td>
<td class="pformright"><img src="regimage.php" border="0" alt="captcha"></td>
</tr>
<tr>
<td class="pformleft"><b>{$fm->LANG['CaptchaСonfirm']}</b><br /><span class="desc">{$fm->LANG['CaptchaNote']}</span></td>
<td class="pformright"><input type="text" style="width: 130px" name="captcha" size="13" maxlength="10"></td>
</tr>
DATA;
}
echo <<<DATA
<tr>
<td class="darkrow2" align="center" colspan="2"><input type="submit" value="{$fm->LANG['Send']}" name="submit" /></td>
</tr>
</table>
</form>
DATA;
?>
После вставки обратите внимание на расположение завершителя DATA; Он должен находится в первом столбце(в начале строки без отступов) иначе работать не будет. Если необходимо подкорректируйте этот момент.
3) открываем файл tools.php. Находим функцию mailtouser(). Находим строку:
CODE:if ($fm->user['id'] === 0) {
$fm->_Message($fm->LANG['MainMsg'],$fm->LANG['GuestMail']);
и закомментируем её:
CODE:/*if ($fm->user['id'] === 0) {
$fm->_Message($fm->LANG['MainMsg'],$fm->LANG['GuestMail']);
}*/
Находим строку:
CODE:$fm->input['subject'] = $fm->bads_filter(substr($fm->input['subject'],0,255));
$fm->input['message'] = $fm->bads_filter($fm->input['message']);
и после неё вставляем код:
CODE:if ($fm->exbb['anti_bot'] && ($fm->input['captcha'] == '' || !isset($_SESSION['captcha']) || $fm->input['captcha'] !== $_SESSION['captcha']))
{
$fm->_Message($fm->LANG['Registration'],$fm->LANG['CaptchaError']);
}
unset($_SESSION['captcha']);
Если всё сделали правильно, то всё будет работать. Я протестил у себя - всё работает. Зарегестрированные пользователи без капчи, гости с каптчей. Каптча проверяется.
---------------
Вообще есть над чем поразмыслить, не правда ли?. На других форумах такой бодяги нет.. Там закинул плагин в папку сплагинами и подключил через админцентр, а здесь вот так приходится ручками, ручками править.. Если по уму, то я бы написал плагин, положил бы его в архив и отправил пользователю. Пользователю достаточно было бы его распаковать в папку с плагинами и запустить через админпанель. Плагин бы сам всё прописал где нужно. А зачем же тогда компы придумали? Правильно: для автоматизации рутинных операций.. Не надоело ещё?.. Мне лично надоело. |
|
|
Parapsixolog |
Отправлено: 19 сентября 2018 — 16:37
|
Advanced Member
Покинул форум
Сообщений всего: 487
Дата рег-ции: Сент. 2011
Репутация: 14
|
Flat , я хотел, что бы слева, в нижнем углу, была небольшая, полупрозрачная кнопка "Написать нам". При нажатии на которую открывалось окно по типу http://exbb.info/community/tools...ail&member=1 То есть только для администратора. И что бы гости тоже могли написать ему, введя каптчу.
А вот делать такое для всех пользователей, как предлагаете вы, считаю лишним.
То есть, как я понимаю, надо сделать копию файла tools.php, переименовать его, внести ваши правки, удалить всё не нужное, что не нужно для отправки письма.
Я наверное и сам это смогу наклепать, методом проб и ошибок, но нет времени на это.
Да, и ещё одно. Лучше было бы не вносить правку в tools.php, а взять готовый скрипт обратной связи работающий по SMTP Только внести в этот скрипт каптчу работающею только для гостей. |
|
|
Flat |
Отправлено: 20 сентября 2018 — 09:27
|
Full Member
Покинул форум
Сообщений всего: 187
Дата рег-ции: Май 2018
Откуда: Красноярский край
Репутация: 14
|
Parapsixolog пишет:я хотел, что бы слева, в нижнем углу, была небольшая, полупрозрачная кнопка "Написать нам".
В этом проблемы не вижу.
Всё понятно.
Parapsixolog пишет:То есть, как я понимаю, надо сделать копию файла tools.php, переименовать его, внести ваши правки, удалить всё не нужное, что не нужно для отправки письма.
Зачем такие сложности? Хотя в принципе можно и так, но там надо будет подключить отдельный темплэйт под другим именем(тот, что я выше привёл). Можно через сессию попробовать. Покумекаю, отпишусь.
Parapsixolog пишет:Да, и ещё одно. Лучше было бы не вносить правку в tools.php, а взять готовый скрипт обратной связи работающий по SMTP Только внести в этот скрипт каптчу работающею только для гостей.
Так этот скрипт надо ещё написать или найти готовый. Я в и-нете видел варианты. Пока надо через стандартный сделать, а уж потом можно заменить на любой скрипт. |
|
|
Flat |
Отправлено: 21 сентября 2018 — 08:32
|
Full Member
Покинул форум
Сообщений всего: 187
Дата рег-ции: Май 2018
Откуда: Красноярский край
Репутация: 14
|
Parapsixolog пишет:Только затем, что бы вывести форму написания письма администратору в отдельное окно, и оставить формы e-mail на самом форуме неизменными.
Всё оказалось намного проще чем я думал.
Инструкция:
1) Открываем в папке include файл page_tail.php. Перед тегом </body> вставляем строчки:
CODE: <div style="opacity: 0.7; margin: 0px; background: e6eeee; z-index: 2; position: fixed; height: 100%; right: 90%; top: 95%;"> <a href="tools.php?action=mail&member=1&admin=1">
<img src="./templates/InvisionExBB/im/email.gif"
border=0 alt="Написать администратору" title="Написать администратору" /></a>
</div>
В ссылке на картинку добавьте свою папку со скином. А также сделайте свою картинку кнопки. Я взял кнопку стандартную чтобы было видно что скрипт работает.
2) Берём вышепреведённый несколькими постами выше мой вариант файла mailform.tpl. Находим в нём строчку:
CODE:if($fm->exbb['anti_bot'] === TRUE && $fm->user['id'] === 0)
и меняем её на строку:
CODE:if($fm->exbb['anti_bot'] === TRUE && $fm->user['id'] === 0 && $fm->input['admin']===1)
3) Файл tools.php переделываем как я уже писал выше.
Всё.
Теперь гости могут отправлять только с фиксированной кнопки и только администратору.
Протестите у себя(у меня всё работает) и если что пишите.(Отредактировано автором: 21 сентября 2018 — 08:54) |
|
|
|