Помощь [help] Карта для раздела сайта

Тема в разделе "DLE", создана пользователем Хортица, 16 янв 2008.

Информация :
Актуальная версия DataLife Engine 12.0
( Final Release v.12.0 | Скачать DataLife Engine | Скачать 12.0 demo )
Нужно ли обновляться | Как обновиться | Изменения в шаблонах
> Нет русских символов <
[Приватная тема DLE (Все подробности в ЛС к модератору раздела)]

Версии 11.3 и ниже - уязвимы!

Локализации | F.A.Q. | Внешний вид
Правила раздела | Правила форума
Обсуждение хайда карается баном!
В каждом сообщении указывайте версию DLE, которого они касаются!
Статус темы:
Закрыта.
Модераторы: killoff
  1. Хортица

    Хортица Прохожие

    Вобщем такая идея...
    Есть к примеру категория Игры от Nevosoft, там идет к примеру 100 различных игр, и время от время они добавляются.

    Можно ли создать статическую страницу в которой бы отображался список всех новостей данной категории с урл на них, <a href=http://smallgames.ws/2008/01/16/kolybel_persii.html>Колыбель персии</a> - такого плана.

    Те что то типа карты сайта, но для каждого раздела!
    Кто сможет реализовать?
    Денежное вознаграждение возможно!
     
  2. m1kola

    m1kola

    Регистр.:
    13 дек 2006
    Сообщения:
    221
    Симпатии:
    55
    LДа впринципе можно на основе модуля карты сайта сделать.
    Принцип тот же...
     
  3. Zooza

    Zooza Создатель

    Регистр.:
    5 янв 2008
    Сообщения:
    10
    Симпатии:
    3
    Сделал на базе модуля sitemap

    PHP:
    <?php
    if(!defined('DATALIFEENGINE')){
      die(
    "404 No file!");
    }

    $thisdate   date ("Y-m-d H:i:s", (time()+ $config['date_adjust']*60));

    $map dle_cache("sitemap"$config['skin']);      
    if(!
    $map) {
    $map "";
    $result2 $db->query("SELECT id,autor,date,title,alt_name,comm_num,rating,news_read,approve FROM "PREFIX ."_post WHERE category LIKE '%1%' AND approve = '1' AND date < '$thisdate' ORDER BY date DESC");  
    while (
    $row2 $db->get_row($result2)){
    $map .= "<li style='padding:2px;font-size:11px;' valign='absmiddle'> <font color=\"red\"> "substr($row2['date'],0,10) ." </font> 
     <a style='font-weight: bold;' href="
    .$config['http_home_url'].str_replace("-","/",substr($row2['date'],0,10))."/".$row2['alt_name'].".html>".stripslashes($row2[title])."</a>
     | OT: 
    $row2[autor] | Views: $row2[news_read] | Comments: $row2[comm_num] | Raiting: $row2[rating] \n";
    $map .= "</ul>\n";  
    }

    create_cache("sitemap"$map);
    }

    $tpl->load_template('static.tpl');
    $tpl->set('{description}'"&nbsp;");
    $tpl->set('{static}'$map);
    $tpl->compile('content');
    $tpl->clear();

    ?>
    Сразу хочу сказать что я не профессиональный кодер, но эта штука работает. Единственное в 11 строке в запросе надо изменить %1% на %номер категории откуда выводить%

    Материальное вознаграждении не интересует, был бы признателен за помощь в другом вопросе, если я помог.

    Кстати об установке, наверняка стоит модуль карта сайта, и что бы не было конфликта. установка такая:

    в .htaccess добавляем

    # Карта сайта категории X
    RewriteRule ^catmap(.*).html(/?)+$ index.php?do=catmap [L]

    Заходим в engine.php. Добавляем после:

    case "addnews" :
    include ENGINE_DIR.'/modules/addnews.php';
    break;

    следующий код:

    case "catmap" :
    include ENGINE_DIR.'/modules/catmap.php';
    break;
     
  4. Хортица

    Хортица Прохожие

    А можно ли это будет сделать для каждого раздела сайта?!
    Те постоянно менять № категории и выводить через htaccess? Только так?!
     
  5. Zooza

    Zooza Создатель

    Регистр.:
    5 янв 2008
    Сообщения:
    10
    Симпатии:
    3
    Пока да, но постараюсь доработать на выходных, что бы с админкой было, если получится...
     
  6. glam

    glam

    Регистр.:
    12 апр 2007
    Сообщения:
    734
    Симпатии:
    217
    Хортица, специально для тебя немного доработал:



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

    PHP:
    <?php
    if(!defined('DATALIFEENGINE')){
      die(
    "Здесь хакерам не место!");
    }

    $thisdate   date ("Y-m-d H:i:s", (time()+ $config['date_adjust']*60));

    $map dle_cache("sitemap"$config['skin']);
    if(!
    $map) {
    $map "";
    $result $db->query("SELECT id,name,alt_name FROM " PREFIX "_category WHERE id LIKE '%4%' ORDER BY name ASC");
    while(
    $row $db->get_row($result)){

    $map .= "<ul style='padding:20px;font-size:18px;'><a style='font-weight: bold;'  href='".$config['http_home_url']."category/${row[alt_name]}/' style='font-size:10pt;font-weight:bold;'>$row[name]</a>\n";
    $cat intval($row[id]);

    $result2 $db->query("SELECT id,autor,date,title,alt_name,comm_num,rating,news_read,approve FROM "PREFIX ."_post WHERE category LIKE '%4%' AND approve = '1' AND date < '$thisdate' ORDER BY date DESC");
    while (
    $row2 $db->get_row($result2)){
    $map .= "<li style='padding:2px;font-size:11px;' valign='absmiddle'> <font color=\"red\"> "substr($row2['date'],0,10) ." </font>
     <a style='font-weight: bold;' href="
    .$config['http_home_url'].str_replace("-","/",substr($row2['date'],0,10))."/".$row2['alt_name'].".html>".stripslashes($row2[title])."</a>
     | OT: 
    $row2[autor] | Views: $row2[news_read] | Comments: $row2[comm_num] | Raiting: $row2[rating] \n";
    }
    $map .= "</ul>\n";
    }

    create_cache("sitemap"$map);
    }

    $tpl->load_template('static.tpl');
    $tpl->set('{description}'"&nbsp;");
    $tpl->set('{static}'$map);
    $tpl->compile('content');
    $tpl->clear();

    ?>
    заливаем в engine/modules файл catmap.php

    в .htaccess добавляем

    # Карта сайта категории X
    RewriteRule ^catmap(.*).html(/?)+$ index.php?do=catmap [L]

    Заходим в engine.php. Добавляем после:

    case "addnews" :
    include ENGINE_DIR.'/modules/addnews.php';
    break;

    следующий код:

    case "catmap" :
    include ENGINE_DIR.'/modules/catmap.php';
    break;


    ===============================================


    1). в 11 и 17 строке находим (в запросе) :

    %4%

    заменяем на:

    %номер нужной категории%

    2). Карта будет доступна по адресу: http://site.ru/catmap.html

    ===============================================
     
  7. GauraStyle

    GauraStyle Kot

    Регистр.:
    13 фев 2007
    Сообщения:
    1.500
    Симпатии:
    920
    Это типа карта будет от glam или как?
    Ну просто хочу уточнить, так сказать поинтересоватся.
    ;)
     
  8. glam

    glam

    Регистр.:
    12 апр 2007
    Сообщения:
    734
    Симпатии:
    217
    Ну если по факту то - да! ведь сделал то я :ah:
     
Статус темы:
Закрыта.