Next Generation CMS :: Форум поддержки

Заинтересовала наша система? Тогда этот форум для Вас!

Вы не зашли.

#26 Re: "А как сделать..." » W3C ругается » 2009-07-10 14:55:36

/engine/plugins/tags/tags.php
Найди (два раза)

			$link .= ((strpos($link, '?') === false)?'?':'&') . 'tag='.urlencode($tag);

Замени на

			$link .= ((strpos($link, '?') === false)?'?':'&') . 'tag='.urlencode($tag);

#28 Re: "А как сделать..." » Статус пользователя в комментариях » 2009-07-09 17:16:38

/engine/includes/comments.show.php
#1. Найди

 from ".prefix."_comments c

#1. Замени на (два раза)

, u.status from ".prefix."_comments c

#2. Найди

		$tvars['vars']['id']		=	$row['postdate'];
		$tvars['vars']['author']	=	$row['author'];
		$tvars['vars']['mail']		=	$row['mail'];
		$tvars['vars']['date']		=	LangDate(ctimestamp, $row['postdate']);

#2. Добавь после

		switch ($row['status']) {
			case 1: $status = $lang['administrator'];	break;
			case 2: $status = $lang['editor'];		break;
			case 3: $status = $lang['journalist'];		break;
			case 4: $status = $lang['commenter'];		break;
		}
		$tvars['vars']['status']	=	$status;

/engine/lang/russian/site/comments.ini
Добавь в конец

status		=	"Статус:"
commenter	=	"Комментатор"
journalist	=	"Журналист"
editor		=	"Редактор"
administrator	=	"Администратор"

/engine/lang/english/site/comments.ini
Добавь в конец

status		=	"Status:"
commenter	=	"Commentator"
journalist	=	"Journalist"
editor		=	"Editor"
administrator	=	"Administrator"

P.S. ROZARD опередил )

#30 Re: Архив плагинов » Плагин :: user ranks » 2009-07-08 23:26:23

SkineR пишет:

А постраничку комментариев я так и непоставил, на форуме ненашел

Тогда откуда она у тебя в коде в посту #17?
И чего ее искать? Первая же тема в FAQ

SkineR пишет:

но наверно с 2z по идее должна подходить

Для 2z разве была постраничка комментариев?

Посмотрел твой код, ни одного шага из предложенных мною ты не выполнил.
Просто u.reg нельзя использовать, ибо там уже есть c.reg

В общем попробуй вот это: http://www.mediafire.com/?djny5mw5td0
Взял свой "чистый" файл с постраничкой, немного изменил запрос к БД и добавил {com} и {reg}
Тебе осталось лишь плагин user_ranks установить

#31 Re: "А как сделать..." » Как добавить noindex и nofollow ко всем ссылкам в статьях » 2009-07-08 14:55:09

Не вижу разницы. Более того, это решит проблему только с BB-кодами.

#32 Re: "А как сделать..." » Как добавить noindex и nofollow ко всем ссылкам в статьях » 2009-07-08 14:17:35

2. Открой /engine/includes/classes/parse.class.php
Найди

				array_push($rdest, "<a ".(implode(" ", $outkeys)).">".$alt.'</a>');

Замени на

				array_push($rdest, "<noindex><a ".(implode(" ", $outkeys))." rel=\"nofollow\">".$alt.'</a></noindex>');

3. Установи плагин ireplace
Поочередно в новостях/статических страницах/комментариях произведи следующие замены:
#1. Исходная подстрока

<a

#1. Целевая подстрока

<noindex><a rel="nofollow"

#2. Исходная подстрока

</a>

#2. Целевая подстрока

</a></noindex>

#34 Re: Архив плагинов » Плагин :: user ranks » 2009-07-08 02:14:44

zheka, в version замени

Acts: core

Затем выключи/включи плагин.

edit:
SkineR, а ты сделай так:
1. Сперва заново установи хак постранички комментов на чистый comments.show.php
2. Потом выполни #3 (и только!) в первом сообщении данной темы
3. И найди следующее

	if ($config['use_avatars']) {
		$sql = "select c.*, u.avatar from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id where c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'').($commID?'':" limit ".$limit_start.",".$limit_count);
	} else {
		$sql = "select c.* from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id WHERE c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'').($commID?'':" limit ".$limit_start.",".$limit_count);
	}

После чего замени на

	if ($config['use_avatars']) {
		$sql = "select c.*, u.avatar, u.com, u.news, u.reg as regdate from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id where c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'').($commID?'':" limit ".$limit_start.",".$limit_count);
	} else {
		$sql = "select c.*, u.com, u.news, u.reg as regdate from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id WHERE c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'').($commID?'':" limit ".$limit_start.",".$limit_count);
	}

Для даты регистрации тогда будет такая переменная

		$tvars['vars']['reg']		=	langdate("j Q Y", $row['regdate']);

#35 Re: "А как сделать..." » Title и закрытие ссылок... » 2009-07-05 23:29:42

Как уже сказали, управление тайтлом есть в виде плагина.
Что касается меню, то его полностью можно вставить в main.tpl вместо {categories}, со всеми пунктами, названными как душе будет угодно.

#36 Re: Архив плагинов » Плагин :: user ranks » 2009-07-05 11:50:08

SkineR, обрати внимание на свой статус (Пойманные на слове роботы) и на мой (Пользователь). Вся причина в этом. А все потому, что при регистрации ты не отметил галочкой пункт: "Я подтверждаю, что я живой человек из плоти и крови. Я знаю, что все учётные записи, по которым нет такого подтверждения будут удаляться администраторами без предупреждения."

#37 FAQ » FYI: Постраничка комментариев в 0.9.0 » 2009-06-25 01:17:09

insider
Ответов: 0

/engine/includes/comments.show.php
#1. Найти

	if ($config['use_avatars']) {
		$sql = "select c.*, u.avatar from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id where c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'');
	} else {
		$sql = "select c.* from ".prefix."_comments c WHERE c.post=".db_squote($newsID).($comment_id?(" and c.id=".db_squote($comment_id)):'')." order by c.id".($config['reverse_comments']?' desc':'');
	}

#1. Заменить на

	$showNumber = 30; // количество комментариев на страницу

	$cstart = intval($_REQUEST['page']) ? abs(intval($_REQUEST['page'])) : 1;

	$limit_start = ($cstart - 1) * $showNumber;
	$limit_count = $showNumber;

	if ($config['use_avatars']) {
		$sql = "select c.*, u.avatar from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id where c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'').($commID?'':" limit ".$limit_start.",".$limit_count);
	} else {
		$sql = "select c.* from ".prefix."_comments c left join ".uprefix."_users u on c.author_id = u.id WHERE c.post=".db_squote($newsID).($commID?(" and c.id=".db_squote($commID)):'')." order by c.id".($config['reverse_comments']?' desc':'').($commID?'':" limit ".$limit_start.",".$limit_count);
	}

#2. Найти

		...

		exec_acts('comments', $row);
		$tpl -> vars($templateName, $tvars);

		if ($commID) { echo $tpl -> show($templateName); }
		$template['vars']['mainblock'] .= $tpl -> show($templateName);
	}

#2. Добавить после

	$maxNavigations = 10; // количество отображаемых страниц; соответствует указанному лишь приблизительно

	// Make navigation bar
	$navigations = getNavigations(tpl_dir.$config['theme']);
	$tpl -> template('pages', tpl_dir.$config['theme']);

	$which_link = 'full_page';

	if ($config['category_link']) {
		global $catz;
		$row['catid'] = array();
		$categories = explode('-', category);
		foreach ($categories as $cat)
		{
		    $row['catid'][] = $catz[$cat]['id'];
		}
		$row['catid'] = implode(',', $row['catid']);
	} else {
		$row['postdate'] = mktime(0, 0, 0, month, day, year);
	}
	$row['alt_name'] = altname;

	// Prev page link
	if ($limit_start && $comnum) {
		$prev = floor($limit_start / $showNumber);
		$row['page'] = $prev;
		$tvars['regx']["'\[prev-link\](.*?)\[/prev-link\]'si"] = str_replace('%page%',"$1",str_replace('%link%',GetLink($which_link, $row), $navigations['prevlink']));
	} else {
		$tvars['regx']["'\[prev-link\](.*?)\[/prev-link\]'si"] = "";
		$no_prev = true;
	}

	$commCount = $mysql->result("SELECT count(*) as count FROM ".prefix."_comments WHERE post=".db_squote($newsID).($commID?(" and id=".db_squote($commID)):''));
	$pages_count = ceil($commCount / $showNumber);

	$pages = '';

	$sectionSize	= floor($maxNavigations / 3);
	if ($pages_count > $maxNavigations) {
		// We have more than 10 pages. Let's generate 3 parts
		// Situation #1: 1,2,3,4,[5],6 ... 128
		if ($cstart < ($sectionSize * 2)) {
			$pages .= generateNavigations($cstart, 1, $sectionSize * 2, $which_link, $row, $navigations);
			$pages .= $navigations['dots'];
			$pages .= generateNavigations($cstart, $pages_count-$sectionSize, $pages_count, $which_link, $row, $navigations);
		} elseif ($cstart > ($pages_count - $sectionSize * 2 + 1)) {
			$pages .= generateNavigations($cstart, 1, $sectionSize, $which_link, $row, $navigations);
			$pages .= $navigations['dots'];
			$pages .= generateNavigations($cstart, $pages_count-$sectionSize*2 + 1, $pages_count, $which_link, $row, $navigations);
		} else {
			$pages .= generateNavigations($cstart, 1, $sectionSize, $which_link, $row, $navigations);
			$pages .= $navigations['dots'];
			$pages .= generateNavigations($cstart, $cstart-1, $cstart+1, $which_link, $row, $navigations);
			$pages .= $navigations['dots'];
			$pages .= generateNavigations($cstart, $pages_count-$sectionSize, $pages_count, $which_link, $row, $navigations);
		}
	} else {
		// If we have less then 10 pages
		$pages .= generateNavigations($cstart, 1, $pages_count, $which_link, $row, $navigations);
	}
	$tvars['vars']['pages'] = $pages;

	// Next page link
	if (($prev + 2 <= $pages_count) && $comnum) {
		$row['page'] = $prev + 2;
		$tvars['regx']["'\[next-link\](.*?)\[/next-link\]'si"] = str_replace('%page%',"$1",str_replace('%link%',GetLink($which_link, $row), $navigations['nextlink']));"<a href=\"".GetLink($which_link, $row)."\">$1</a>";
	} else {
		$tvars['regx']["'\[next-link\](.*?)\[/next-link\]'si"] = "";
		$no_next = true;
	}

	if ($comnum && ($pages_count>1)){
		$tpl -> vars('pages', $tvars);
		$template['vars']['mainblock'] .= $tpl -> show('pages');
	}

#38 Re: "А как сделать..." » базовые вопросы » 2009-06-24 14:31:39

Попробуй так:
/engine/includes/news.php
Найди

	// Get a list of categories to show
	// "-" means "AND", "," means "OR"
	// I.e: news-games,web,files is "Show news from: news&games (2 categories in news) or web or files"
	if (is_array($categoryList)&&count($categoryList)) {
		$carray = $categoryList;
	} else {
		$ctext  = trim(!is_array($categoryList)?$categoryList:category);
		$carray = generateCategoryArray($ctext);

		// Error - didn't find chosen categories
		if (strlen($ctext) && !count($carray)) {
			msg(array("type" => "info", "info" => $lang['msgi_cat_not_found']));
			return;
		}
	}

Добавь после

	global $category;
	foreach ($catz as $cat) {
		if ($cat['parent'] == $catz[$category]['id']) {
			$carray[] = array($cat['id']);
		}
	}

#40 Re: Новый функционал » Возможность остановки комментариев » 2009-06-23 19:06:13

А разве это опция сейчас так не делает?

Не делает, исчезает лишь форма добавление, уже оставленные комментарии продолжают отображаться

#41 Re: Бесплатные шаблоны » Шаблон WA IND 2 - Смена стилей не перезагружая страницу. » 2009-06-23 17:48:18

Мало того, что в шаблоне не исправлен конфликт с плагином voting, так о нем еще и слова не сказано.

#42 Re: Новый функционал » Возможность остановки комментариев » 2009-06-23 17:43:38

ROZARD
Еще бы товарищу Dimon80 знать, куда это вставлять smile
Способ плох, если новостей куча, это сколько перечислить придется?
И потом, приведенный код разве не делает то же самое, что и отключенная опция "Разрешить комментарии"?

Dimon80

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

Чего ты хочешь? Чтобы отключенная опция "Разрешить комментарии" так же выключала отображение комментариев для конкретной новости?

#43 Re: "А как сделать..." » базовые вопросы » 2009-06-23 12:59:11

А почему бы просто не добавить новость в категорию и в ее родителя?

#45 Re: Флейм » Опять насчет плагина xfield » 2009-06-21 19:40:17

if (!function_exists('categories'))
{
    function categories($categories)
    {
        $result = array();
        for ($i = 0; ($category = pow(2, $i)) <= $categories; $i++)
        {
            if ($categories & $category)
            {
                $result[] = $category;
            }
        }
        return implode(',', $result);
    }
}

echo categories(76);

#46 Re: Флейм » Опять насчет плагина xfield » 2009-06-21 18:14:03

еперь осталось только массив превратить в номер категории

Т.е.? Пример можно?

#48 Re: Страницы плагинов » lastnews :: Последние новости с сайта » 2009-06-21 16:12:24

Искусственное ограничение, как исправить описано в самом конце этого поста (последняя замена): http://ngcms.ru/forum/viewtopic.php?pid=4519#p4519

#50 Re: Флейм » Опять насчет плагина xfield » 2009-06-21 01:43:06

В БД хранится сериализованный ассоциативный массив значений xfields-полей, где ключи - названия полей. По ID не легче, ибо xfields-поля ID не имеют. Можно конечно добавить ID к полям и ключами массива назначить эти ID, но это будет ни разу не быстрее, но и не медленнее.

Подвал раздела

Работает на FluxBB