+2.84
Рейтинг
8.47
Сила

Олег

Нужно заставить сайт работать быстрее

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

zalivaet.spb.ru
2260 топиков, 2253 юзера, 21 тысяча комментариев.
Хостинг Инфобокс.

Возможно какая-то беда с подключением к базе данных. В целом сайт не падает, но при обращении к базе тупит.

Буду благодарен за советы, рекомендации. Готов оплатить работу.
Пишите в личку или в ICQ 288-579-253.

UPD: Спасибо за комменты и советы, пока оживил, буду думать о переезде на ВДС.

Они вернулись. Минусы.

Мы возвращаем на сайт минусы, но теперь они будут под присмотром плагина «Magic Rule»

Настройки у нас такие:
/**
 * Список правил
 * Для каждого действия составляется отдельная группа правил, групп может быть несколько
 * Список действий: vote_comment, vote_topic, vote_user, create_comment, create_topic
 * В параметре msg можно указать сообщение, которое будет отображаться пользователю, можно использовать просто текст или указать ключ из языкового файла, например, 'message_cant_vote'
 *
 * Список доступных критериев:
 *	registration_time - время в секундах с момента регистрации пользователя
 *	rating - необходимый минимальный рейтинг
 *	skill - необходимая минимальная сила
 *	count_comment - необходимое минимальное количество комментариев у пользователя
 *	count_topic - необходимое минимальное количество топиков у пользователя
 *  rating_sum_topic - необходимый суммарный рейтинг топиков пользователя за период. По умолчанию период 14 дней, для изменения периода можно указать значение ввиде массива array(rating,period)
 *  rating_sum_comment - необходимый суммарный рейтинг комментариев пользователя за период. По умолчанию период 7 дней, для изменения периода можно указать значение ввиде массива array(rating,period)
 *
 * Любой из критериев можно опустить.
 */
$config['rule']=array(
	'vote_comment' => array(
		'msg' => 'Вы еще не достаточно окрепли!',
		'groups' => array(
			/**
			 * Голосовать за комментарии могут юзеры старше 3-х дней, рейтинг больше -5, написал больше 10 комментариев,
			 * суммарный рейтинг комментариве за последние 7 дней больше -10
			 */
			array(
				'registration_time' => 60*60*24*3,
				'rating' => -5,
				'count_comment' => 2,
				'rating_sum_comment' => array(-10,60*60*24*7),
			),
		),
	),
	'vote_topic' => array(
		'msg' => 'Вы еще не достаточно окрепли!',
		'groups' => array(
			/**
			 * Голосовать за топики могут юзеры старше 3-х дней, рейтинг больше -3, написал хотя бы 1 топик,
			 * суммарный рейтинг топиков за последние 14 дней больше -5
			 */
			array(
				'registration_time' => 60*60*24*3,
				'rating' => -3,
				'count_topic' => 1,
				'rating_sum_topic' => array(-5,60*60*24*14),
			),
		),
	),
	'vote_user' => array(
		'msg' => 'Вы еще не достаточно окрепли!',
		'groups' => array(
			/**
			 * Голосовать за пользователя могут юзеры старше 14 дней, рейтинг больше 3, написал хотя бы 3 топика,
			 * суммарный рейтинг топиков за последние 30 дней больше 0
			 */
			array(
				'registration_time' => 60*60*24*14,
				'rating' => 3,
				'count_topic' => 3,
				'rating_sum_topic' => array(0,60*60*24*30),
			),
		),
	),
);

/**
 * Правила для создания блокировок
 * Группы правил необходимо располагать по приоритету - вверху самые главные
 * Если группа правил сработала, то создается блокировка и обход нижестоящих правил прекращается
 *
 * Параметры правил:
 *	name - название правила блокировки, для учета в таблице блокировок. Название ограничено в 50 символов
 * 	type - список типов голосований, up - за, down - против
 *	target - список сущностей за которые голосуют
 * 	count - количество голосований
 * 	rating - максимальный порог рейтинга пользователя, блокировка используется только если рейтинг пользователя ниже этого
 * 	period - период, за который необходимо считать количество голосований, в секундах
 * 	block_time - время, на которое необходимо блокировать возможность голосования
 * 	block_msg - сообщение, которое будет видеть пользователь при попытке голосования
 */
$config['block_rule_vote']=array(
	/**
	 * Если пользователь за 20 минут успел поставить 5 минусов за комментарии и рейтинг пользователя меньше 3, то блокируем ему голосование на 5 часов
	 */
	array(
		'name' => 'block 1', //
		'type' => array('down'),
		'target' => array('comment'),
		'count' => 5,
		'rating' => 3,
		'period' => 60*20,
		'block_time' => 60*60*5,
		'block_msg' => 'Вы слишком агрессивны, нужно отдохнуть!',
	),
	/**
	 * Если пользователь за 48 часов успел поставить 10 минуса за топики и рейтинг пользователя меньше 5, то блокируем ему голосование на 24 часа
	 */
	array(
		'name' => 'block 2', //
		'type' => array('down'),
		'target' => array('topic'),
		'count' => 10,
		'rating' => 5,
		'period' => 60*60*48,
		'block_time' => 60*60*24,
		'block_msg' => 'Вы слишком агрессивны, нужно отдохнуть!',
	),
	/**
	 * Если пользователь за 3 часа успел поставить 4 минуса за топики и рейтинг пользователя меньше 5, то блокируем ему голосование на 12 часов
	 */
	array(
		'name' => 'block 3', //
		'type' => array('down'),
		'target' => array('topic'),
		'count' => 4,
		'rating' => 5,
		'period' => 60*60*3,
		'block_time' => 60*60*12,
		'block_msg' => 'Вы слишком агрессивны, нужно отдохнуть!',
	),
	/**
	 * Если пользователь за 8 часов успел поставить 3 минуса за пользователя и рейтинг пользователя меньше 10, то блокируем ему голосование на 1 день
	 */
	array(
		'name' => 'block 4', //
		'type' => array('down'),
		'target' => array('user'),
		'count' => 3,
		'rating' => 10,
		'period' => 60*60*8,
		'block_time' => 60*60*24*1,
		'block_msg' => 'Вы слишком агрессивны, нужно отдохнуть!',
	),
);


Всем удачи!

Мануал как добавить google карты к топику

Многии задаются вопросом как добавить google карту к топику чтобы можно было отмечать точки.
Такой вопрос встал и у меня после неудачного серфинга понял что прийдётся под свои нужды писать самому.

Я думаю многим будет интересно как я это сделал поэтому представляю список всех изменений что я вносил в код.

Оговорюсь сразу делал не через плагины а правил коды. Просто времени на изучение плагинов небыло.

И так приступим

1. В \classes\actions\ActionTopic.class.php после:
$_REQUEST['topic_title']=$oTopic->getTitle();


добавил:
$_REQUEST['coodrinati']=$oTopic->getCoodrinati();



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

Мануал как добавить яндекс карты к топику

Многии задаются вопросом как добавить yandex какрту к топику чтобы можно было отмечать точки.
Такой вопрос встал и у меня после неудачного серфинга понял что прийдётся под свои нужды писать самому.

Я думаю многим будет интересно как я это сделал поэтому представляю список всех изменений что я вносил в код.

Оговорюсь сразу делал не через плагины а правил коды. Просто времени на изучение плагинов небыло.

И так приступим

1. В \classes\actions\ActionTopic.class.php после:
$_REQUEST['topic_title']=$oTopic->getTitle();


добавил:
$_REQUEST['coodrinati']=$oTopic->getCoodrinati();



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

Голосовой поиск

голосовой поиск

Сегодня я вам расскажу как установить голосовой поиск на Livestreet CMS


1) Первым делом вам надо найти nav.tpl в своем шаблоне, примерный путь до этого файла такой

livestreet / templates / skin / synio / nav.tpl

2) вам необходим такой код

x-webkit-speech="" speech="" autocomplete="off"


3) Теперь как вы сами догадываетесь, нам необходимо добавить этот код в nav.tpl

Находим такой код
<form class="search-header-form" id="search-header-form" action="{router page='search'}topics/" style="display: none">
<input type="text" placeholder="{$aLang.search}" maxlength="255" name="q" class="input-text">
<input type="submit" value="" title="{$aLang.search_submit}" class="input-submit">
</form>

и добавляем в него свой
<form class="search-header-form" id="search-header-form" action="{router page='search'}topics/" style="display: none">
<input type="text" placeholder="{$aLang.search}" maxlength="255" name="q" x-webkit-speech="" speech="" autocomplete="off" class="input-text">
<input type="submit" value="" title="{$aLang.search_submit}" class="input-submit">
</form>

Предупреждение Голосовой поиск работает только через Google Chrome
Пример также можно посмотреть на моем сайте twepl или на Хабрахабр

Система авторизации как на лепре/хабре (Social)

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

Пример: лепра


хабр


На социале авторизация представлена в виде маленького окошка, я хочу сделать в идеале как на лепре, чтобы была отдельная страница под авторизацию и каждый раз при обновлении страницы была новая картинка, сейчас же выглядит это дело вот так:

хотелось бы приукрасить, добавить свои картинку(и), это я сделать в состоянии, но вот в php я не силен. Есть только примерное представление, что нужно сделать новый экшен, который бы совмещял в себе страницу регистрации и авторизации, и заменить потом ссылку регистрации/авторизации на этот новый экшен. Или же что то поменять в стандартном, только в css? Может кто то делал нечто подобное? Готов помочь денюжкой если вы мне поможете с реализацией.

[РЕШЕНО] Меню на сайте

Привет всем.
Столкнулся с проблемой: нужно вывести ссылки на блоги (и при посещении их сделать активными) в главном меню сайта. Когда добавляю просто ссылку на блог в файле header_top.tpl
<li><a href="/blog/team/">Сообщества блог</a> <i></i></li>
то при заходе на ссылку она не становится активной (голубой).
Подскажите, как можно решить проблему. Благодарю.

РЕШЕНИЕ

Вставляем в нужное место код пункта меню
<li {if $sAction == 'blog' and $sEvent == 'blog_name'}class="active"{/if}><a href="/blog/team/">Сообщества блог</a> <i></i></li>


Где blog_name название блога (на английском).

Спасибо 1099511627776 .

Новости от админа на главной странице

Всех с прошедшим праздником и с наступающим. Давным давно реализовал для своего сайта плагин (очень простой) выводящий стену админа на главную страницу в виде ленты новостей, а сегодня ко мне обратились с просьбой поделиться наработкой. Ну что же пожалуйста. Хотя нет, немного пожадничаю, плагин не дам, а вот как его быстро собрать самому расскажу, благо время на это есть.

Первое
Создаем основу плагина:
В каталоге «plugins» необходимо создать структуру каталогов, похужую на картинку выше. Здесь все очевидно: файл класса блока «BlockNews.class.php» будет формировать необходимые данные для вывода шаблона. Хук будет добавлять блок для вывода, а шаблон – содержать оформление блока.
Перейдем теперь к содержанию:

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

Это профиль админа и Вы ничего здесь не увидите :)

Вот здесь, на сайте FootGames.ru, реализована интересная фишка.

На странице админа пустой профиль со инфой скрытой за надписью «Это профиль админа и Вы ничего здесь не увидите :) ».

Так вот, если кому интересно, могу забацать такое (за пиво).
Предложение ограничено по времени, пока настрой есть)