pedia-learning

ورود

گذرواژه‌تان را فراموش کرده‌اید؟

ثبت نام

ثبت نام
انجمن عمومی گسترش فناوری آگو

اگر اولین بار از انجمن بازدید می کنید برای دسترسی کامل به انجمن عضو شوید بعد عضویت قادر به ارسال مطلب و شرکت در بحث خواهید داشت

ارسال پاسخ 
 
امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
پایان عمر گوگل ریدر و ساخت یک خبر خوان با PHP
12-14-2013, 10:45 PM
ارسال: #1
پایان عمر گوگل ریدر و ساخت یک خبر خوان با PHP
سلام

بالاخره زمان پیدا کردم تا مطلب جدید رو در سایت بذارم.برای این پست تصمیم گرفتم به آموزش ساخت یک خبر خوان یا RSS Reader رو براتون بذارم.همینطور که میدونید گوگل ریدر داره به پایان عمر خودش نزدیک میشه پس بهتره که یک خبر خوان اختصاصی برای خودمون بنویسیم.

برای خواندن محتویات فایلهای RSS زبان PHP یک کتابخانه به نام SimplePie داره که به راحتی میتونید فایلهای RSS رو باهاش مدیریت کنید.

خب بریم سراغ آموزش :

ابتدا کتابخانه simplepie رو از لینک زیر دانلود کنید :

دیدن لینک ها برای شما امکان پذیر نیست. لطفا ثبت نام کنید یا وارد حساب خود شوید تا بتوانید لینک ها را ببینید.


برای استفاده از این کتابخانه باید فایل autoloder.php رو include کنید :

کد php:
include 'simplepie/autoloader.php'

بعد از اینکار یک شیء از کلاس SimplePie میسازیم و تنظیماتش رو انجام میدیم :

کد php:
$url 'http://phpro.ir/feed/';
$feed = new SimplePie();
$feed->set_feed_url($url);
$feed->init(); 
در متغیر $url آدرس فید یا Rss سایت مورد نظر رو وارد میکنیم. اگر میخواید که در خبرنامه تعداد بیشتری از سایتها عضو باشید بهتره که آدرس Rss سایتهای دلخواه رو در دیتابیس ذخیره کنید و آدرس Rss رو از دیتابیس بخونید.

در خط بعدی یک شیء از کلاس SimplePie ایجاد کردیم. در خط بعد آدرس Rss رو به متد set_feed_url پاس دادیم تا SimplePie بفهمه که چه آدرسی رو میخوام داشته باشیم.

با فراخوانی متد init تنظیمات اولیه برای فید مورد نظر انجام میشه.حالا دیگه وقتشه که محتویات فیت رو بخونیم و نمایش بدیم .

برای نمایش نام فید و توضیحاتش میتونیم از دو متد زیر استفاده کنیم :
کد php:
echo '<h1>' $feed->get_title() . '</h1>';
echo 
'<p>' $feed->get_description() . '</p>'

دقت کنید که این دو تا متد در اصل نام سایت و توضیحات مربوط به سایت رو نمایش میدن و هنوز به قسمت خواندن پستها نرسیدیم.

برای خواندن یکی از پستهای RSS میتونیم به صورت زیر عمل کنیم :

کد php:
$item $feed->get_item(0);

echo 
'<p>عنوان: <a href="' $item->get_link() . '">' $item->get_title() . '</a></p>';
echo 
'<p>نویسنده: ' $item->get_author()->get_name() . '</p>';
echo 
'<p>تاریخ: ' $item->get_date('Y-m-d H:i:s') . '</p>';
echo 
'<p>توضیحات: ' $item->get_description() . '</p>';
echo 
$item->get_content(true); 

در ابتدا با متد get_item یکی از پستها رو بر حسب اندیس پست ( که از صفر شروع میشه ) انتخاب میکنیم سپس با نمایش محتویات پست میپردازیم.

اما کار ما هنوز ادامه داره. برای راحتی و عملکرد بهتر این خبر خوان بهتره که ۱۰ تا پست آخر رو به ما نمایش بده. برای این کار باید از متد get_item_quantity برای برگرداندن تعداد خبرهای موجود در فید استفاده میکنیم :

کد php:
$itemQty $feed->get_item_quantity();
for (
$i 0$i $itemQty$i++) {
    
$item $feed->get_item($i);
    echo 
'<p>عنوان: <a href="' $item->get_link() . '">' $item->get_title() . '</a></p>';
    echo 
'<p>نویسنده: ' $item->get_author()->get_name() . '</p>';
    echo 
'<p>تاریخ: ' $item->get_date('Y-m-d H:i:s') . '</p>';
    echo 
'<p>توضیحات: ' $item->get_description() . '</p>';
    echo 
$item->get_content(true);
    echo 
'<hr>';


بعد از اینکه تعداد خبرهای موجود در فید رو فهمیدیم میتونیم با استفاده از حلقه for و استفاده از متد get_item همه محتویات فید مورد نظر رو نمایش بدیم.

این کتابخانه امکانات خیلی زیادی داره که میتونه در ساخت یک خبر خوان به ما کمک کنه.البته اگر میخواید یک خبرخوان خوب داشته باشید باید مقداری سلیقه به خرج بدید و با تلفیق این کتابخانه با jQuery و Ajax یک خبرخوان زیبا و کاربردی درست کنید.
نقل قول این ارسال در یک پاسخ
ارسال پاسخ 


پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 1 مهمان


Persian Translation by MyBBIran.com - Ver: 4.1
Powered by MyBB, © 2002-2024 MyBB Group.
Theme designed by Marvel (Sidebar created by Yaldaram - Yaldaram.com)
Theme Translation by Mt Edition