پنج شنبه 31 مرداد 1398 |  عضویت / ورود






[ بخش اصلی آموزشها | افزودن آموزش | داری بیشترین امتیاز | دارای بیشترین بیننده | جدیدترین نظرات ]

چگونه چندین فید (RSS) را ادغام کنیم تا یک فید به دست آید؟ (آموزش کار با Yahoo Pipes)



این آموزش مربوط است به موضوع طراحي صفحات وب که توسط Hamid در تاریخ: Tuesday, 2012 August 28 ارسال شده است.   |   تعداد بازدید: 3734 بار   |   امتیاز متوسط: امتیازی داده نشده است


-------------------

اگر مدیر وب‌سایتی مثل آفتابگردان باشید، با این مشکل مواجه هستید که چطور به کاربران یک فید واحد عرضه کنید در حالی که آن فید شامل مطالب و لینک‌های تمام بخش‌های سایت شما باشد.

به طور مثال ما در آفتابگردان بیش از 8 فید مختلف داریم:

فید بخش اخبار:

http://aftab.cc/rss.php

فید بخش آموزش‌های سایت:

http://aftab.cc/tutorials/rss.php

فید مرکز دانلود آفتابگردان:

http://dl.aftab.cc/feed/

فید لینکستان آفتابگردان:

http://aftab.cc/linkestan/rss.php

فید فروشگاه سایت:

http://feeds.feedburner.com/AftabgardanStore

و چندین فید دیگر...

مشکل این است که از نگاه برنامه‌نویسی، ساخت فیدی که بتواند تمام این دیتابیس‌ها را در قالب یک فایل نمایش دهد، بسیار پیچیده است! (هر کدام از لحاظ زمان ارسال و نوع نمایش
به کاربر با دیگری متفاوت هستند) اما تولید یک فید برای هر بخش کار پیچیده‌ای نیست... (سعی می‌کنیم نحوه تولید Feed را به زبان PHP در بخش آموزش PHP توضیح دهیم)


اگر بتوانیم برای هر بخش، یک فید جداگانه ایجاد کنیم و یا اینکه خودش به صورت خودکار فید ارائه کند (مثل بخش دانلود ما که چون سیستم WordPress است، خودش فید آماده دارد) می‌توانیم همه این فیدها را با ترفندهای مختلف با هم ادغام کنیم و در قالب یک فید به کاربران سایتمان ارائه کنیم.

یکی از ترفندها این است:

استفاده از لوله‌های یاهو! یا Yahoo Pipes:

برای این کار،

1- به آدرس زیر بروید:

http://pipes.yahoo.com

2- در بالای صفحه روی Log in کلیک کرده و با اکانت یاهوی خود لاگین کنید.

3- روی دکمه Create a pipe کلیک کنید.

http://tutorials.aftab.cc/web/unifeed/multi_to_single_rss1.png

4- در صفحه بعد، در سمت چپ، از بخش Sources به تعداد فیدهایی که می‌خواهید ادغام شود، عنصر Fetch Feed را کشیده و روی محیط کاری رها کنید:

http://tutorials.aftab.cc/web/unifeed/multi_to_single_rss2.png

مثلاً اگر می‌خواهید 8 فید را ادغام کنید، هشت بار این کار را انجام دهید.

5- همانطور که می‌بینید، این عنصر فقط از شما آدرس فید را می‌خواهد! بنابراین، شروع کنید آدرس فیدهای مختلفتان را در عناصری که ایجاد کرده‌اید وارد کنید. مثلاً من در فید اول این آدرس را تایپ می‌کنم که فید مربوط به اخبار ماست:

http://aftab.cc/rss.php

 

6- بعد از اینکه تمام فیدهایتان را معرفی کردید، حالا یک عملگر نیاز دارید که این ورودی‌ها را با هم ترکیب کند و یک خروجی بدهد. عملگری که این کار را انجام می‌دهد، Union (یکتاساز) نام دارد و در بخش Operators است. (شماره 1 در تصویر زیر)

پس در همان پنل سمت چپ روی Operators کلیک کنید و عملگر Union را یک بار به صفحه بکشید.

توجه کنید که Union نهایتاً 5 ورودی می‌گیرد و یک خروجی می‌دهد. پس اگر کمتر یا مساوی 5 فید دارید، یک عملگر کافی‌ست، اما اگر مثل ما بیش از 5 فید دارید، باید دو و اگر بیش از 10 فید دارید، 3 عملگر بیاورید...

یک عملگر هم نیاز دارید که خروجی عملگرها را به آن بدهید تا نهایتاً یک خروجی به دست آید. (به تصویر زیر و به عملگر یونین سوم دقت کنید) (البته اگر یکی از یونین‌ها یک جای خالی دارد می‌توانید خروجی یک یونین را به آن جای خالی وصل کنید تا به یونین سوم نیاز نباشد)

7- در نهایت فقط کافی‌ست دایره زیر هر فید (شماره 2 در تصویر زیر) را بکشید و روی دایره‌های ورودی Union (شماره 3 در تصویر زیر) رها کنید!
و همینطور، بعد از اینکه همه فیدها را روی ورودی‌های Union کشیدید، حالا خروجی‌های یونین‌ها را به یونین سوم بدهید.

و در نهایت، خروجی یونین آخر را به Pipe Outoput بدهید و تمام!

http://tutorials.aftab.cc/web/unifeed/multi_to_single_rss3.png

 

خروجی شما باید چیزی شبیه به این باشد:

http://pipes.yahoo.com/pipes/pipe.edit?_id=270f06c0de8018762b05fe94fe130a6e


فید نهایی شما تقریباً آماده است. برای گرفتن یک آدرس یکتا، مراحل زیر را طی کنید:

 

8- روی دکمه Save کلیک کنید و نامی دلخواه برای فیدتان انتخاب کنید.

9- در صفحه بعد، روی دکمه Publish در زیر نام فید کلیک کنید. (شماره 1 در تصویر زیر نشان می‌دهد که من روی Publish کلیک کرده‌ام و حالا تبدیل به Unpublish شده است)

http://tutorials.aftab.cc/web/unifeed/multi_to_single_rss4.png

10- آدرس فید شما لینک Get an RSS است! (شماره 2 در تصویر بالا) روی آن کلیک راست کنید و Copy Link Location را انتخاب کنید. آدرس کپی شده را می‌توانید مستقیماً به کاربرانتان بدهید یا اینکه بهتر است آن را به سایت Feed Burner بدهید و یک فید خلاصه‌تر با امکان جمع‌آوری آمار و خیلی امکانات دیگر تهیه کنید.

مثلاً خروجی نهایی فیدهای سایت آفتابگردان این آدرس شده است:

http://feed.aftab.cc/Aftabgardan-cc

 

11- اگر بعداً خواستید، می‌توانید با کلیک روی دکمه Edit Source فیدهای بیشتری به این لوله‌کشی اضافه کنید و یا یکی را کم کنید... در اینصورت نیازی به گرفتن مجدد RSS نیست، خود به خود فید نهایی که به کاربرانتان داده‌اید، آپدیت می‌شود.

 

توجه: ممکن است کاربرانتان در بار اول که فید را به RSS Reader خود می‌دهند، این فیدها را به ترتیب زمانی نبینند. یعنی مثلاٌ ابتدا 10 لینک بخش اخبار بیاید، بعد 10 لینک بخش آموزش‌ها و ...
مشکل خاصی نیست، از این به بعد که هر مطلبی به سایت اضافه کنید، برای کسانی که تا آن لحظه فید شما را به RSS Reader خود اضافه کرده‌اند به ترتیب زمانی نمایش می‌دهد و لینک‌های جدیدتر بالاتر از بقیه قرار می‌گیرند...

 

موفق باشید؛
حمید رضا نیرومند

کلمات کلیدی: فید, عرضه یک فید واحد, کار با فیدها, فیدهای آفتابگردان, ادغام فیدها, ترفند برای ارسال فید, آموزش لوله های یاهو, آموزش Yahoo Pipes, ادغام چند فید, آموزش یاهو, تنظیمات حرفه ای فید, سایت Feed Burner, ادغام چند RSS





ارسال سؤال یا نظر
Tutorials ©