Forums / National / Russian / Модули и плагины / плагин newpagesbycat

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

rob_user
#1 2011-03-24 10:56

Можно ли переделать данный плагин от LDU под cotonti?

Вот код:

 

файл newpagesbycat.setup

<?PHP

/* ====================
Land Down Under - Website engine
Copyright Neocrome
http://www.neocrome.net

[BEGIN_LDU]
File=plugins/extended/newpagesbycat/newpagesbycat.setup.php
Version=800
Updated=2005-mar-25
Type=Plugin
Author=Neocrome
Description=
[END_LDU]

[BEGIN_LDU_EXTPLUGIN]
Code=newpagesbycat
Name=New pages by category
Description=Плагин отображения отдельных списков новых страниц, из заданых разделов, на главной странице.
Version=1.0
Date=2005-mar-25
Author=Neocrome
Copyright=
Notes=
SQL=
[END_LDU_EXTPLUGIN]

[BEGIN_LDU_EXTPLUGIN_CONFIG]
categories=01:text:::Коды категорий, разделенные запятой
maxpages=02:select:0,1,2,3,4,5,6,7,8,9,10,15,20,25,30,50,100,200:5:Количество страниц в списках
[END_LDU_EXTPLUGIN_CONFIG]

==================== */

if (!defined('LDU_CODE')) { die('Wrong URL.'); }

 ?>

 

 

файл newpagesbycat

 


<?PHP

/* ====================
Land Down Under - Website engine
Copyright Neocrome
http://www.neocrome.net

[BEGIN_LDU]
File=plugins/extended/newpagesbycat/newpagesbycat.php
Version=800
Updated=2005-mar-25
Type=Plugin
Author=Neocrome
Description=
[END_LDU]

[BEGIN_LDU_EXTPLUGIN]
Code=newpagesbycat
Part=main
File=newpagesbycat
Hooks=index.tags
Tags=index.tpl:{PLUGIN_NEWPAGESBYCAT.categorycodehere}
Minlevel=0
Order=10
[END_LDU_EXTPLUGIN]

==================== */

if (!defined('LDU_CODE')) { die('Wrong URL.'); }

/* ============ MASKS FOR THE HTML OUTPUTS =========== */

// $cfg['plu_mask_newpagesbycat'] = "%1\$s"." ".$cfg['separator']." "."%2\$s"." (%3\$s)<br />";
 $cfg['plu_mask_newpagesbycat'] = "%2\$s <font color=#000000 size=1>(%3\$s)</font>"."<br />";
// %1\$s = Ссылка на категорию
// %2\$s = Ссылка на страницу
// %3\$s = Дата

$plu_empty = $L['None']."<br />";

function ldu_get_newpagesbycat($cat, $limit, $mask)
 {
 global $L, $db_pages, $usr, $cfg, $ldu_cat, $ldu_catacc, $plu_empty;

 $sql = ldu_query("SELECT page_id,page_cat,page_title,page_date FROM $db_pages WHERE page_state=0 AND page_cat NOT LIKE 'system' AND page_cat='$cat' AND page_cat IN ('".implode("','", $ldu_catacc)."') ORDER by page_date DESC LIMIT $limit");

 while ($row = ldu_fetch_array($sql))
 {
 $res .= sprintf($mask,
 "<a href=\"list.php?c=".$row['page_cat']."\">".$ldu_cat[$row['page_cat']]['title']."</a>",
 "<a href=\"page.php?id=".$row['page_id']."\">".ldu_cc(ldu_cutstring(stripslashes($row['page_title']),37))."</a>",
 date($cfg['formatyearmonthday'], $row['page_date'] + $usr['timezone'] * 3600)
 );
 }

 $res = (empty($res)) ? $plu_empty : $res;

 return($res);
 }


if ($cfg['plugin']['newpagesbycat']['maxpages']>0 && !empty($cfg['plugin']['newpagesbycat']['categories']))
 {
 $cats = explode(',', $cfg['plugin']['newpagesbycat']['categories']);
 foreach($cats as $k => $i)
 {
 $i = trim($i);
 $newpagesbycat[$i] = ldu_get_newpagesbycat(
 $i,
 $cfg['plugin']['newpagesbycat']['maxpages'],
 $cfg['plu_mask_newpagesbycat']);
 }
 }

$t-> assign(array(
 "PLUGIN_NEWPAGESBYCAT" => $newpagesbycat,
 "PLUGIN_NEWPAGESBYCAT_MAXLINES" => $cfg['plugin']['newpagesbycat']['maxpages']
 ));

?>

 

 

Или может быть уже есть такой плагин? Просто нужно выводить разные страницы в виде анонса 2--3 из нескольких категорий. 

ldu -- Seditio -- Cotonti
This post was edited by rob_user (2011-03-24 10:59, 13 years ago)
jcrush
#2 2011-03-24 11:06

Он уже давно есть

SEO блог: http://blog.stfw.ru/
rob_user
#3 2011-03-24 11:16

Имеется ввиду recentitems? Или имено newpagesbycat?

ldu -- Seditio -- Cotonti
Kort
#4 2011-03-24 11:32

rob_user можете четко сформулировать что требуется?

SED.by - создание сайтов, разработка плагинов и тем для Котонти
rob_user
#5 2011-03-24 11:40

Есть несколько категорий страниц. На главной нужно выводить некоторое количество страниц из заданных категорий. Например:

Категории    --Каталог --  --Заявки--  --Статьи--

на index нужен блок и что-то типа этого

Новые материалы

КАТАЛОГ

последняя страница

предпоследняя страница

n-  страница

ЗАЯВКИ

последняя страница

предпоследняя страница

n-  страница

СТАТЬИ

последняя страница

предпоследняя страница

n-  страница

 

У меня на сайте под LDU был этот плагин и все работало. То есть это не recentitems который просто списком выводит все последние страницы.

ldu -- Seditio -- Cotonti
This post was edited by rob_user (2011-03-24 11:41, 13 years ago)
jcrush
#6 2011-03-24 12:02
SEO блог: http://blog.stfw.ru/
rob_user
#7 2011-03-24 12:49

to jcrush.  100 % то что нужно. Уже установил, работает. Большое человеческое спасибо.

Кстати там код почти такой же как и в newpagesbycat...

ldu -- Seditio -- Cotonti
jcrush
#8 2011-03-24 13:40

дык это он и есть

SEO блог: http://blog.stfw.ru/