ďťż

Jak pobrać najnowsze posty z naszego forum na swoją stronę www?

bigos - mój pamiętnik, wspomnienia, uczucia, przeżycia ...

Witam

A więc tak:lTrzeba pobrać na swój komp ten niewielki plik (spakowany rarem)llRozpakowaćlPliki w archiwum są ułożone tak jak trzeba. Zachowując strukturę plików wysyłamy teraz to wszystko na swój serwer do katalogu głównego serwera - tak jak się rozpakowało razem z katalogiem (tam gdzie jest plik index).

W katalogu który rozpakowaliśmy i wysłaliśmy na serwer mamy coś takiego:

magpierss/cache/
extlib/
rss_cache.inc
rss_fetch.inc
rss_parse.inc
rss_utils.incTeraz bardzo ważne jest aby podkatalogowi cache nadać uprawnienia - chmod 777
W katalogu tym zapisywane są dane które pobrane zostały z serwera forum przez co wszystko działa szybciej.

I teraz najważniejsze - wywołujemy na naszej stronie zajawki z forum - wklejąc poniższy kod:
(kod ten wymaga zaistalowanego php na serwerze, a plik w którym go wkleimy powinien również być parsowany przez php - najczęściej ma on rozrzeżenie .php)
[php]
<?
require_once('magpierss/rss_fetch.inc');
define('MAGPIE_CACHE_DIR', $_SERVER['DOCUMENT_ROOT'].'/magpierss/cache');
$url="http://forum.bieszczady.info.pl/external.php?type=rss2";

$num_items = 10;
$rss = fetch_rss($url);
$items = array_slice($rss->items, 0, $num_items);

foreach ( $items as $item )
{
$title = $item['title'];
$url = $item['link'];
echo "<a href=$url target=\"_blank\">$title</a><br>\n";
}
?>
[/php]

Wyjaśnienie kodu:

[php]
define('MAGPIE_CACHE_DIR', $_SERVER['DOCUMENT_ROOT'].'/magpierss/cache');
[/php]
Bardzo ważna linia. Jest to ścieżka bezwzględna do katalogu cache - tego w którym mają być przechowywane zapisane pliki które mają za zadanie przyspieszyć działanie całości. Jeśli pliki zostały wgrane do katalogu głownego serwera nic nie trzeba tu zmieniać.

[php]
$num_items = 10;
[/php]
Tu ustawiamy ilość newsów na stronie (od 1 do 30)

[php]
echo "<a href=$url target=\"_blank\">$title</a><br>\n";
[/php]
Tu możemy sformatować link który pojawia się na stronie. Pamiętać należy że tagi HTMLa dodawane w cudzysłowiach "" należy poprzedzić slashami tak jak wygląda to tutaj: target=\"_blank\".

Całość oparta jest na MagpieRSS zatem resztę można sobie doczytać na stronie autora klasy.


Poniżej dodatkowe zmienne do wykorzystania przy formatowaniu wiadomości:
$title = $item['title'];
$url = $item['link'];
$poczatek = $item['description'];
$czas = date("j.m.Y", $item['date_timestamp']);
$kategoria = $item['category'];
$autor = ereg_replace("example@example.com ", "", $item['author']);
W nowej wersji forum jest już możliwość ustawiania czasu updejtu kanału.
Ustawiłem teraz cache RSS na 1 minutę.

Jeszcze jedno.

W pliku magpierss o nazwie rss_cache trzeba zmienną

[php]var $MAX_AGE = 3600;[/php]

ustawić na powiedzmy:

[php]var $MAX_AGE = 600;[/php]

Co da cache RSS o czasie 10 minut na waszych lokalnych maszynach.
Przy ostatniej aktualizacji forum przekodowałem bazę na UTF-8.
By pobierać najnowsze posty z RSSu w poprawnym kogowaniu należy:

linię wywołującą tytuły z forum:
[PHP]echo "<a href=$url target=\"_blank\">$title</a><br>\n"; [/PHP]

zmodyfikować na:

[PHP]
echo "<a href=$url target=\"_blank\">".iconv("UTF-8","ISO-8859-2",$title)."</a><br>\n";
[/PHP]


Czy admin odbiera maile? Adminie moze zmieniłes maila? Wysyłałem ci na priv jakis czas temu i brak odpowiedzi... Jesli nie masz teraz czasu to daj znac ze odpowiesz pozniej, ale bede wiedzial ze dotarlo. A jesli nie dotarlo to przeslij mi info na jaki adres moge wyslac maila?

Pzdr!
Odpowiedź poszła na @.
cholera a nie można by tak po ludzku kroczek za kroczkiem nie zawsze mam córkę koło siebie
pozdrawiam
  • zanotowane.pl
  • doc.pisz.pl
  • pdf.pisz.pl
  • brytfanna.keep.pl