[Web] Последние темы IPB на PHP

Тема в разделе "Manuals / Мануалы", создана пользователем OVERLORD, 29 июн 2018.

  1. OVERLORD

    OVERLORD Активный участник

    Регистрация:
    28 июн 2018
    Сообщения:
    46
    Симпатии:
    27
    Skype:
    078367
    Предлагаю вам код для вывода тем с форума IPB на html(php)

    Код:
    <?php
    //======[ОСНОВНЫЕ НАСТРОЙКИ]======
    //Префикс таблицы с IPB
    $prefix = '';
    //Сколько тем выводить
    $num = 10;
    //Сколько символов оставить в названии темы после урезания
    $topic_num_sym = 65;
    //Имя папки с картинками текущего скина
    $img_path = '1';
    //Формат времени
    $time = 'H:i';
    //Форумы, которые мы не трогаем
    $forumexclude = '0';
    //Сервер БД на котором висит база форума
    $host="localhost";
    //Имя БД
    $database="имя БД";
    //Логин БД
    $username="Логин БД";
    //Пароль БД
    $password="Пароль";
    //====[Если не знаем PHP - дальше ничего не трогаем ]=========

    Код:
    $ipb_db = mysql_pconnect($host, $username, $password);
    mysql_select_db($database, $ipb_db);
    $rd = "SET CHARACTER SET utf8";
    IF (!$result = mysql_query($rd)) {
    ECHO "ERROR!!!\n";
    }
    $resultf = mysql_query("SELECT tid, title, state, posts, starter_id, last_poster_id, last_post, starter_name, last_poster_name, views, topic_hasattach FROM ".$prefix."topics WHERE (forum_id NOT IN ($forumexclude)) ORDER BY last_post DESC LIMIT $num",$ipb_db) or die(mysql_error());
    $row_resultf = mysql_fetch_assoc($resultf);
    $totalRows_resultf = mysql_num_rows($resultf);
    do {
    $topicstrip = $row_resultf['title'];
    if (strlen($topicstrip) > $topic_num_sym) {
    $topicstrip = substr($topicstrip,0,$topic_num_sym);
    $topicstrip = $topicstrip."...";
    }
    $status = ($row_resultf['state'] == "closed") ? "<img src=\"http://forum.ВАШ_САЙТ.ru/style_images/$img_path/f_closed.gif\" border=\"0\" alt=\"Тема закрыта\">" : "";
    $attach = ($row_resultf['topic_hasattach'] == "1") ? "<img src=\"temp/A-Vector/images/files.gif\" border=\"0\" alt=\"В сообщении есть прикрепленные файлы\"> " : "";
    
    $last_date = date($time,$row_resultf['last_post']);
    $starter_name = $row_resultf['starter_name'];
    $bt.= "
    <div class='forums'>
    <div class='theme_info'>
    <div class='theme_icon'></div>
    <div class='theme_title'><a  href=\"http://forum.ВАШ_САЙТ.ru/index.php?showtopic=".$row_resultf['tid']."&view=getlastpost\"' title=\"".$row_resultf['description']."\" target='_blank'>$topicstrip</a></div>
    <div class='theme_more'><a href='/' target='_blank'>$starter_name</a> , $last_date </div>
    </div></div>";
    } while($row_resultf = mysql_fetch_assoc($resultf));
    mysql_free_result($resultf);
    echo $bt;
    return $bt;
    ?>
    
    ВАШ_САЙТ - Заменить на ссылку вашего сайта
    Создать в корне сайта файл latest_post.php добавить данный код в данный файл

    На странице сайте там ге хотите вывести Последние темы с форума пишем

    Код:
    <?php include("latest_post.php");?>
    CSS для отображения в левой колонке сайта
    
     
    
    #left .forums_theme {
       width: 100%;
       margin: 0 auto;
          padding-top: 10px;
    }
    #left .forums_theme .forums {
       background: #211d1366;
       padding: 5px;
       position: relative;
       display: block;
       margin-bottom: 11px;
    }
    #left .forums_theme .forums {
       background: rgba(33, 29, 19, 0.4);
       padding: 5px;
           cursor: pointer;
    }
    #left .forums_theme .forums:hover {
       background: rgba(64, 63, 61, 0.4);
    }
    #left .forums_theme .forums DIV{
       position: relative;
    }
    #left .forums_theme .forums .theme {
    height: 44px;
    background: url(../img/forum.png) no-repeat;
    padding-top: 10px;
    }
    
    #left .forums_theme .forums .theme_icon {
    width: 43px;
    float: left;
    min-height: 44px;
    background: url(../img/theme_icon.png) no-repeat;
       margin-left: 10px;
       margin-top: 5px;
    }
    
    #left .forums_theme .forums .theme_info {
       min-height: 40px;
       width: 100%;
       padding-bottom: 10px;
    }
    
    #left .forums_theme .forums .theme_title a {
    color: #d7d6d6;
       font-size: 11px;
       font-weight: 200;
       text-transform: uppercase;
       font-family: Tahoma, sans-serif;
       text-decoration: none;
    }
    
    #left .forums_theme .forums .theme_title a:hover {
    text-decoration: underline;
    }
    #left .forums_theme .forums .theme_title {
       padding: 7px;
       text-align: left;
       left: 10px;
    }
    #left .forums_theme .forums .theme_more {
    color: #847411;
       font-size: 10px;
       font-weight: 200;
           text-align: left;
       left: 10px;
       text-transform: uppercase;
       font-family: Tahoma, sans-serif;
       text-decoration: none;
    }
    
    #left .forums_theme .forums .theme_more a {
    color: #fab91a;
    }
     
    #1 OVERLORD, 29 июн 2018
    Последнее редактирование модератором: 30 июн 2018
    4ydo и Maiden7 нравится это.

Партнеры