Open erfanara opened 2 years ago
سلام خیلی ممنون، البته من تجربه ای ندارم راجب rss ولی فک می کنم خیلی سخت نیست پیاده سازیش. باید با دیدن یکی دوتا نمونه راحت بشه پیاده سازی کردش. خیلی خوشحال میشم اگه بتونم کمک کنم و تلاشمو میکنم تا یک دونه pr بفرستم اگه تونستم 😅. فکر می کنم که در همین حد که مثلا (خبرنامه شماره فلان منتشر شد) توی feed قرار بگیره برای شروع خوب باشه.
فقط من طبق بررسی هایی که کردم نفهمیدم که فایل index.html رو چه کسی آپدیت میکنه؟ و اینکه مثلا jekyll داره چیکار میکنه رو دقیق متوجه نشدم، اگه static site generator ای که index.html رو درست می کنه ، مثلا برای ما فایل atom.xml هم درست کنه دیگه خیلی راحت میشه کار، نیاز نیست خیلی وارد طرز ساخت atom.xml بشیم.
ما در حال حاضر فایل index.html رو دستی اپدیت میکنیم. یک پوشه آرشیو داریم که توش آرشیو هر شماره قرار میگیره. شاید نیازه که یک اسکریپت داشته باشیم و مثلا هفتگی فایلهای RSS رو بر اساس محتوای HTML ای و پترن شمارههای هر فایل بسازه. من فردا در اولین فرصتی که تایم ازاد داشته باشم روند کار رو اینجا به صورت کامل مینویسم که چطوری خبرنامه کار میکنه تا دید بهتری پیدا بکنید
اون پوشه آرشیو که گفتم به صورت خودکار ساخته میشه.
یک کار دیگه هم که میشه کرد کلا ساخت RSS مستقل از دادههای فعلی باشه و اصطلاحا مبتنی بر فایلها نباشه و مستقیم از API گیتهاب برای ایشوها استفاده بکنه و لیست کل محتواها رو بگیره و فایل RSS رو بسازه (یا آپدیت بکنه)
سلام.
برای ساخت هر شماره خبرنامه:
پیشنهاد من اینه کلن خود خبرنامهها رو بزاریم توی RSS، مثلا خبرنامه جدید که میاد شخص متوجه میشه و روش میتونه کلیک کنه. حالا ایدهای ندارم مییشه خود محتوای خبرنامهرو هم اینطوری اورد توی RSS یا نه
یعنی کاربر وقتی مشترک RSS میشه، بتونه ببینه که خبرنامه جدید اومده و روش کلیک کنه و بره داخلش (خوب بود که محتوای خبرنامه همونجا در دسترش بود)
از اونجایی که اسکریپت php یک دونه فایل html درست می کنه ، فکر می کنم که بدون هیچ مشکلی بتونیم محتویات همون فایل رو بذاریم توی content هر item فید، من پیشنهاد می کنم که از یک کتابخونه ساده استفاده کنیم ، مثلا این فکر می کنم خیلی کتابخونه ساده و تمیزی باشه: https://github.com/mibe/FeedWriter/
مثلا برای اینکه فایل atom.xml بسازیم : https://github.com/mibe/FeedWriter/blob/master/examples/example_atom.php
چه عالیه. بسیار خوب.
الان بیشتر بحث این هست که چه محتوایی و به چه صورت قرار بدیم داخلش. یک راه اینه که کلا شماره خبرنامه مهم نباشه و همه پستهارو توش قرار بدیم و اپدیت کنیم دائم.
آها صحیح ، روش شما به نظرم بهتره چونکه اگر بخوایم محتواهای قبلی رو هم بگذاریم یکم سر اسم و زمانشون ممکنه اذیت بشیم. من یکمی سعی کردم بیشتر دست به کد بشم و تست کنم ببینم چطور میشه مثلا اگه از همون پوشه archive یکی یکی هر فایل html رو بخونیم و اضافه کنیم به فید.
اینجا همونطور که گفتم یکی دو تا مشکل هست ، یکی اسمشونه که راحت میشه درستش کرد ، ولی یک مشکل دیگه هم هست که در مورد زمان هر کدوم از این آیتم هاست. که اگه زمانشون درست بشه ترتیب نمایش هر آیتم هم درست میشه.
اما برای اینکه روش شما رو پیاده سازی کنیم، اسکریپت باید هر بار که ران میشه فایلِ فید رو آپدیت کنه و دقیق تر بخوام بگم مثلا یک دونه entry به فایلِ فید اضافه کنه ،ولی این کتابخونه ای که معرفی کردم فکر کنم برای آپدیت کردن فید قابلیتی نداشته باشه و از این نظر باید یک کاریش بکنیم.
با روش خودم به یک نتیجه هایی رسیدم، به زودی یک مرج ارسال می کنم
سلام ممنونم از شما. زمان و ترتیب رو از کجا میخونه؟
از داخل خود فایل های html اومدم و تایم رو خوندم، که به نوعی میام و اون تاریخ جلالیای که هستش رو با رجکس پیدا میکنم، بعد با کتابخونه Jalalian تبدیلش می کنم به تاریخ میلادی تا بشه استفاده کردش...
<h3 style="font-size: 18px; text-align: center; font-family: 'Samim', sans-serif; direction: rtl; color: #263238;">
شمارهٔ ٦٦ - پنجشنبه، ۲۴ شهریور ۱۴۰۱
</h3>
حالا چون فقط یک دونه تگ h3 هست که فقط برای نوشتن تاریخ استفاده شده توی تمپلیت راحت میشه با رجکس پیداش کرد 😂 ولی خب اگه تمپلیت قرار باشه بعدا تغییری بکنه اونوقت مشکل میخوره قضیه و باید رجکس عوض بشه یا یک روش دیگه استفاده کرد...
سلام ممنون از این ایده خوب. من دقیقا بلد نیستم اضافه کردن RSS چه کارهایی نیاز داره و چه قدر ممکنه زمان بر بشه. اگر شما تجربه دارید خوشحال میشم PR بدید و به پروژه اضافه اش کنید. من هم توی لیست کارهام یادداشت کردم که در اولین فرصت آزاد دراین باره مطالعه کنم و اضافه کنمش (اگر شما فرصت نداشتید)