блок вывода RSS-лент - Danneo RSS в том числе

  • #6 Re: блок вывода RSS-лент - Danneo RSS в том числе

    Администратор
    Сообщений: 517
    цитирую студент

    В Вашей версии исчез < hr >


    ну правильно, исчез, потому как я его убрал, т.к. верстаю только в HTML 4.01 Strict и этот элемент является deprecated, да и семантически лучше выводить новости именно списком. Убрать маркер легко, раз ты говоришь, что знаешь CSS, да и вместо hr просто сделай нижнюю границу элементу LI.
    Я чего-й то не пойму - что еще не так? Ведь уже разжевали все, что можно было на форуме Даннео.
  • #7 Re: блок вывода RSS-лент - Danneo RSS в том числе

    Пользователь
    Сообщений: 2
    Вопрос. Требуеться вывести 3 ленты с трех сайтов. Дублировани блоков не помагает, ошибка Fatal error: Cannot redeclare parse_rss()
  • #8 Re: блок вывода RSS-лент - Danneo RSS в том числе

    Администратор
    Сообщений: 659
    цитирую ArchiDOM

    Вопрос. Требуеться вывести 3 ленты с трех сайтов. Дублировани блоков не помагает, ошибка Fatal error: Cannot redeclare parse_rss()


    Думаю тогда нужно вынести функции (parse_rss и output_rss) из блока в danneo.function.php и в каждой копии блока перед строкой
    return $api->siteuni($bc);
    добавить $url = "";
    <?php$url = "";
    return $api->siteuni($bc);

    Решение не проверенное!
  • #9 Re: блок вывода RSS-лент - Danneo RSS в том числе

    Пользователь
    Сообщений: 2
    Перенес, дописал. Один блок работает, при установке второго - Parse error: syntax error, unexpected T_STRING in ........./block/b-RssFid1.php on line 25
    Блок выглядит так:
    <?php<?php
    if(!defined("DNREAD")) exit();
    global $db,$basepref,$api;
    $bc = '';
    if(defined('SETTING')) {
        return $bs = '';
    }
    $url = "http://www.archidom.net/archi/?feed=rss2";
    
    $reg_exp = '#<item>.*?<title>(.*?)<\/title>.*?';
    $reg_exp.= '<link>(.*?)<\/link>.*?<description>';
    $reg_exp.= '(.*?)<\/description>.*?<\/item>#si';
    $pattern = '<a href="%s">%s</a>%s<hr>';
    $context = @stream_context_create(array('http'=>array('method'=>"GET",
                                                          'header'=>"Accept-language: ru\r\n" .
                                                          "User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)\r\n".
                                                          "Connection: Close"
                                                         )));
    $xml_data = @file_get_contents($url, false ,$context);
    if($xml_data) {
        $rss_data = parse_rss($reg_exp,$xml_data);
        $bc.= output_rss($pattern, $rss_data);
    }
    $bc = utfread($bc,'CP1251'); //расскоментировать только если фид в utf кодировке
    $url = "http://www.archidom.net/archi/?feed=rss2";
    return $api->siteuni($bc);
    ?>
  • #10 Re: блок вывода RSS-лент - Danneo RSS в том числе

    Администратор
    Сообщений: 517
    $url один раз указан, второй раз его прописывать не нужно.


    p.s. и да, Дим, функции нужно вынести в danneo.function.php, иначе при открытии на редактирование в админке пропадает кнопка Сохранить и нет настроек. Как раз пытал вчера этот файл.
    На счет нескольких лент - если ставить несколько файлов, то нужно менять названия функций, чтоб не было передекларирования. С выносом функций в основной файл настроек возможно менять не нужно, вечером проверю.
    Ну а так, у меня на бета-версии работают как раз три файла, с разными названиями функций.
Тему читают:
Пользователей 0, Гостей 1, Роботы 0
Календарь форума