+2.15
Рейтинг
2.72
Сила

Sergey

Qevix — Jevix-подобный автоматический фильтр HTML/XHTML разметки в текстах пользователей

qevixQevix — Jevix-подобный автоматический фильтр HTML/XHTML разметки в текстах.

Применяя наборы правил, контролирует перечень допустимых тегов и атрибутов, предотвращает возможные XSS-атаки.

Qevix основывается на идеях и исходном коде PHP версии Jevix (средства для фильтрации HTML/XHTML разметки и автоматического типографирования текста).


Читать дальше →

Плагин «Конструктор каталогов со свойствами и магазин (Simple Catalog)», версия 6.0.0


Вышла новая версия мощнейшего плагина для создания структурированных разделов на сайте. В данной версии добавлены: короткие урлы для каталогов, работа с метками на карте для продуктов, дополнительные правила доступа к полям, добавлен стандартный редактор для многострочных текстовых полей и сохранение исходного форматирования текста.

Читать дальше →

К вопросу о правильном использовании тегов H1-H6 в структуре шаблонов сайтов на LiveStreet

В свете возможного скорого выхода новой версии движка LiveStreet хотелось бы обратить внимание уважаемых разработчиков движка, разработчиков шаблонов и сообщества на вопрос о правильном использовании тегов заголовков H1-H6 в структуре шаблонов и редакторе топиков сайтов на LiveStreet.

К вопросу о правильном использовании тегов H1-H6 в структуре шаблонов сайтов на LiveStreet

Почему это важно:

Вы можете сказать, да надоели уже эти сеошники со своими  хитростями и тонкостями. Но дело в том, что за неправильное использование тегов заголовков H1-H6 (в частности) поисковые системы Яндекс и Googleнакладывают на сайт фильтр за переоптимизацию/переспам и понижают позиции сайта в поисковой выдаче, что ведет к снижению трафика на сайт из результатов поиска. В Google, в частности, этот фильтр является частью известного фильтра Panda. В Яндексе фильтр в шутку назвали «Ты спамный». Он начал работать особо активно где-то с июля 2013 года и накладывается на сайт автоматически.

Читать дальше →

Настраиваем сервер для LiveStreet. Часть IX. LiveStreet.

Предыдущие части:

Не самая сложная, не самая последняя, но самая важная часть. То, ради чего, всё и затевалось :)

Для начала, нужно обеспечить появление ZIP-a с последней версии LiveStreet (на данный момент это LiveStreet_1.0.3.zip ) в корневой папке сайта. Качаем ZIP отсюда livestreetcms.ru/download/ и по SFTP забрасываем в папку сайта /var/www/superls.ru/public/

Читать дальше →

Встречайте: Alto CMS – первый релиз форка LiveStreet'а

6 фото
Встроенная админпанель
image
Говорят, настоящий успех к мастеру приходит тогда, когда начинают делать копии его произведений.

Вот и дорос LiveStreet до того, что настала пора делать первый настоящий форк от него. И зовется этот форк – Alto CMS.

Вообще-то, если верить статистике GitHub'а, то ЛС форкнули уже 99 раз. Но Alto CMS – это первый форк, который вышел в свой первый официальный релиз, и который отныне начинает жить своей собственной жизнью. Сейчас мы постараемся дать ответы на вопросы, которые наверняка возникнут в первую очередь. И, пожалуй, самый первый вопрос…


Подробнее об Alto

Отправитель письма при использовании sendmail

При отправки писем движком LiveStreet используя sendmail есть один нюанс, что отправителем письма (Return-Path) является какой-нибудь nobody@localhost или www-data@localhost или ещё что-то в подобном духе. (всё зависит от настроек сервера, но при виртуальном хостинге возможность исправить настройки сервера отсутствуют).

Изза чего письма могут оседать на некоторых спам фильтрах. или в некоторых webmailах или почтовых программах высвечиваться типа ваш@мейл On Behalf Of: nobody@localhost, что в принципе не кошерно.

Решение проблемы достаточно простое. (я думаю этот момент стоит внести в штатную сборку LiveStreet)

в файле engine/modules/mail/Mail.class.php

176 строка файла
в функции Init() находим
$this->oMailer->From=$this->sFrom;

и добавляем
$this->oMailer->Sender=$this->sFrom;


т.е. вот так выглядить функция после исправлений
	public function Init() {
		/**
		 * Настройки SMTP сервера для отправки писем
		 */
		$this->sHost     = Config::Get('sys.mail.smtp.host');
		$this->iPort     = Config::Get('sys.mail.smtp.port');
		$this->sUsername = Config::Get('sys.mail.smtp.user');
		$this->sPassword = Config::Get('sys.mail.smtp.password');
		$this->bSmtpAuth = Config::Get('sys.mail.smtp.auth');
		$this->sSmtpSecure = Config::Get('sys.mail.smtp.secure');
		/**
		 * Метод отправки почты
		 */
		$this->sMailerType=Config::Get('sys.mail.type');
		/**
		 * Кодировка писем
		 */
		$this->sCharSet=Config::Get('sys.mail.charset');
		/**
		 * Мыло от кого отправляется вся почта
		 */
		$this->sFrom=Config::Get('sys.mail.from_email');
		/**
		 * Имя от кого отправляется вся почта
		 */
		$this->sFromName=Config::Get('sys.mail.from_name');

		/**
		 * Создаём объект phpMailer и устанвливаем ему необходимые настройки
		 */
		$this->oMailer = new phpmailer();
		$this->oMailer->Host=$this->sHost;
		$this->oMailer->Port=$this->iPort;
		$this->oMailer->Username=$this->sUsername;
		$this->oMailer->Password=$this->sPassword;
		$this->oMailer->SMTPAuth=$this->bSmtpAuth;
		$this->oMailer->SMTPSecure=$this->sSmtpSecure;
		$this->oMailer->Mailer=$this->sMailerType;
		$this->oMailer->WordWrap=$this->iWordWrap;
		$this->oMailer->CharSet=$this->sCharSet;

		$this->oMailer->From=$this->sFrom;
		$this->oMailer->Sender=$this->sFrom; // 176 строка. фиксит return-path
		$this->oMailer->FromName=$this->sFromName;
	}

Тонкая настройка почты

Столкнулся с тем, что при добавлении топиков, происходят достаточно сильные тормоза. После проведённого анализа выяснилось, что проблема тормозов ПОЧТА. При публикации топика происходит рассылка по всем пользователям, которые имеют отношение к блогу, в который происходит размещение материала.

При включении отложенной рассылки, всё приходит в порядок, но есть один очень не маловажный момент. Письма о регистрации, активации аккаунта или напоминания пароля, должны приходить незамедлительно.
Предлагаю к вашему вниманию следующий фикс.

В конфиге config/config.local.php добавляем следующие настройки

// Указывает на необходимость использовать режим отложенной рассылки сообщений на email
$config['module']['notify']['delayed'] = true;
// Если опция установлена в true, систему будет собирать записи заданий удаленной публикации, для вставки их в базу единым INSERT
$config['module']['notify']['insert_single'] = true;
// Количество отложенных заданий, обрабатываемых одним крон-процессом
$config['module']['notify']['per_process'] = 10;


Далее исправляем файл classes/modules/notify/Notify.class.php

Находим в нём функцию

public function Send($oUserTo,$sTemplate,$sSubject,$aAssign=array(),$sPluginName=null) {


В этой функции находим строчку

if(Config::Get('module.notify.delayed')) {


И заменяем её на

$isNotifyDelayed = Config::Get('module.notify.delayed');
if (($sTemplate == "notify.registration_activate.tpl") || ($sTemplate == "notify.registration.tpl") || ($sTemplate == "notify.reactivation.tpl") || ($sTemplate == "notify.reminder_code.tpl") || ($sTemplate == "notify.reminder_password.tpl")) { $isNotifyDelayed = false; }
if($isNotifyDelayed) {


PS: Возможно разместил топик не в тот блог, но в другие писать к сожалению не могу. Видимо не хватает рейтинга или силы.

Небольшое дополнение:
Кто-то может забыть, поэтому напоминаю, что необходимо по крону запускать скрипт include/cron/notify.php

есть 2 варианта запуска.

1. используя HTTP.

для этого необходимо поправить .htaccess в папке include/cron/
содержание должно быть

Order Deny,Allow
Deny from all
Allow from XXX.XXX.XXX.XXX


вместо XXX.XXX.XXX.XXX укажите IP, с которого будет производиться HTTP запрос.
и в крон можно внести следующую запись

*/5 * * * *   wget -O- http://www.livestreet.ru/include/cron/notify.php >> /dev/null


2. либо из консоли.

и в крон можно внести следующую запись

*/5 * * * *   /usr/bin/php /vhosts/site.ru/www/include/cron/notify.php


Пути указывайте в соответствии с настройками вашего сервера.

Настраиваем сервер для LiveStreet. Часть I. Введение, хостинг и PuTTY.

Учитывая, что сообщество проявило вот тут livestreet.ru/blog/questions/14593.html#comment233221 не нулевую активность. И точно есть, хотя бы, несколько человек которым эта тема интересна. Начинаю цикл заметок про «что и как устанавливать и настраивать».

Вступительное замечание:

Есть целый ряд людей, в этом сообществе, которые помогали мне в освоение этой темы. Заметками, общением в личке, комментариями в моих старых топах. Поэтому многие идеи конфигурации и вариации в конфигурационных файлах которые я буду описываться по ходу дела, мне не принадлежат. По возможности буду упоминать кто именно был источником.

Я не претендую на истину в последней инстанции, и мой опыт не так уж велик. Так что если кто-то что дельно по-критикует будем вносить исправления в основные тексты со ссылкой на автора улучшения. В итоге можем получить серию очень полезных документов. Вокруг LiveStreet мало хороших и актуальных документаций. Ещё одна точно не помешает. И это одна из целей всей этой затеи.


Начальные предположения:
1. У вас есть «домашний» компьютер с Windows и доступом в сеть.
2. У вас есть желание заполучить свой выделенный(Dedicated) или виртуальный(VPS) сервер для того, чтобы запустить на нём сайт основанный на LiveStreet
3. У вас есть доменное имя для вашего сайта и доступ к настройкам DNS у вашего регистратора домена.

Читать дальше →

Руководство по оформлению вопросов.

Уважаемые вопрошающие, перед тем, как опубликовать свой вопрос, убедитесь, что прочитали и осмыслили данное руководство и привели свой топик в соответствии с ним. Это поможет специалисту быстрее сориентироваться в вашей проблеме, а вам получить ее решение в кратчайшие сроки.

1. Убедитесь, что подобный вопрос еще не задавали. Просмотрите FAQ, воспользуйтесь поиском по сайту. Вы не первый, кто сталкивается с проблемой, и вполне возможно, что ваша проблема уже решена. Не тратьте свое время и время участников сайта на повтор ответа, это не очень вежливо с вашей стороны.

2. Опишите в заголовке топика суть проблемы. Заголовки типа "ошибка", "помогите, пжл" — прямая и быстрая дорога в минус. Заголовок должен точно выражать суть вашей проблемы. Например "Публикация топика проходит очень медленно", "Как убрать капчу при регистрации?". Если вы получаете сообщение об ошибке, то резонно будет выделить часть его в заголовок. Например "Ошибка permission denied во время загрузки изображений". После того как вам удалось сформулировать заголовок точно и лаконично, воспользуйтесь поиском еще раз.

3. Опишите в тексте сообщения вашу ошибку полностью. Особенно важны следующие данные:
— Ситуации в которых проявляется ошибка
— Текст ошибки, если есть
— Действия, после которых ошибка начала проявляться (переезд на новый хостинг, установлен новый плагин)

Дайте краткую информацию о вашем сайте. Очень важно указать:
— Версию движка
— Список установленных плагинов

Для ошибок, связанных с сервером, нужно указать:
— Тип хостинга (свой сервер, шаред хостинг)
— Параметры хостинга
— Используемые связки серверов (apache+mod_php, ngnix+apache+php, ngnix+php_fpm)
— Логи ошибок сервера (их желательно выгрузить на файловое хранилище Dropbox или Яндекс.Диск)
Если вы не можете предоставить эти данные, будьте готовы к тому, что доброволец, который захочет решить вашу проблему, попросит у вас данные доступа к панели управления хостингом, или к серверу.

Для ошибок связанных с производительностью укажите:
— Данные, показываемые панелью производительности (под администратором, в футере всех страниц)
— Вывод плагина Debug Toolbar
— Вывод команды top (если есть доступ к консоли сервера)

Не скромничайте. Чем больше информации получит специалист, тем лучше.

4. Опишите действия, которые вы уже предприняли для решение ошибки. Чистили кэш — напишите. Отключали плагины — напишите.

5. Не «апайте» топик каждый час — вас сразу заминусуют. Если хотите привлечь внимание к своей проблеме, продолжайте решать ее самостоятельно. Если спустя сутки вам не ответили, опишите в комментарии дополнительные шаги, которые вы предприняли после публикации топика.

6. Будьте вежливы и грамотны. С вежливыми и грамотными людьми гораздо приятней иметь дело. Не требуйте помощи, никто не обязан вам помогать, а нахальным тоном вы только усугубите ситуацию. Если вы сомневаетесь в своем уровне владения языком — воспользуйтесь проверкой грамотности от Яндекса.

7. Если проблему удалось решить — обновите топик. Вставьте UPD с информацией о решении, или ссылкой на комментарий, который помог решить проблему. Также в заголовок было бы неплохо вставить фразу (решено), чтобы помочь людям, которые будут искать информацию о подобной проблеме.

Новички! Когда вы создаете топики, в которых смутно понятна суть вопроса, вы неуважительно относитесь к людям, которые будут читать эти топики, тратить время на то, чтобы разобраться в сути вашей проблемы, тратить время на задание дополнительных вопросов, людей, которые будут просматривать блог «Вопросы» в поисках ответов, но будут натыкаться на гору топиков «Памагите!!», «Как сделать чтобы было хорошо?» и ваш топик в том числе.
Когда вы создаете подобные топики из одного предложения, они плохо индексируются поисковиком, и людям с подобными проблемами необходимо создавать похожий топик вместо того, чтобы воспользоваться готовым решением. Это неуважение к сообществу и в какой-то мере эгоизм с вашей стороны. Руководство по составлению вопросов сделано для того, чтобы проблемы решались один раз, быстро и навсегда. Чтобы польза была не только вам, а и остальным участникам. Вы просите уделить внимание вашей проблеме? Уделите ей внимание сначала вы, составив грамотно вопрос, а потом уже просите об этом остальных.

Специалисты! Перед тем как отвечать в топик с проблемой, попросите пользователя привести его к минимальному соответствию с этим руководством, чтобы блог «Вопросы» не тонул в пустых топиках «Помогите!», «Нужна помощь».

Создано по мотивам этого текста. Дополнения и исправления приветствуются. Благодарю за внимание.

Убираем тормоз synio

На этот топик меня сподвиг тот факт, что последние 3-4 дня наблюдаются регулярные тормоза в работе и этого сайта и всех сайтов на LS с шаблоном synio в частности.

Вооружившись этим топиком от PSNet я понял, что все проблемы исходят от корпорации зла Google, т.е. серверы, которые отдают шрифт PT Sans регулярно глючат и тормозят работу сайта.

Читать дальше →