--> با توجه به اینکه درخواست انجام پروژه از سوی کاربران دریافت نشد (به جز یک مورد)، پروژه توسط خودم انجام شد! <--
با سلام.
نیاز به تغییرات در پلاگین وردپرس زیر که برای نمایش نظرات و صفحه بندی نظرات به صورت آژاکس می باشد، دارم.
https://www.tipsandtricks-hq.com/ajax-comment-loading-plugin-fixed-6096
پروژه پیچیده ای نیست، فقط به این دلیل که توضیحات کامل داده شده است، تاپیک طولانی شده است.
هرچند که متاتگ canonical در سئوی صفحه بندی نظرات به اندازه کافی کارآمد است، اما برای اطمینان بیشتر به این پلاگین نیاز است.
کدهای نوشته شده باید استاندارد و به صورت اپن سورس تحویل داده شود. من خودم PHP می نویسم ولی فرصت تست و انجام تغییرات در این پلاگین را ندارم، به همین دلیل این تاپیک را ایجاد کردم.
(برای تست لطفاً از بخش تنظیمات وردپرس، گفتگوها، صفحهبندی دیدگاه ها را فعال کنید و تعداد دیدگاه ها را روی 5 تنظیم و یک پست با تعداد نظرات زیاد را مشاهده نمایید. همچنین لازم است قالب از صفحه بندی نظرات پشتیبانی نماید که درصورت عدم پشتیبانی می توان با فراخوانی تابع paginate_comments_links(); در فایل comments.php قالب، صفحه بندی نظرات را فعال کرد)
تغییراتی که بایستی در پلاگین صورت پذیرد:
1- در پلاگین فوق، به صورت پیش فرض پس از بارگذاری یک پست، تمام بخش نظرات به صورت آژاکسی لود می شود تا نظرات و صفحه بندی نظرات در گوگل ایندکس نشود. حال نیاز است که در هنگام بارگذاری یک پست، اولین صفحه از نظرات (بسته به مقدار تنظیم شده در تنظیمات گفتگو، یعنی اولین یا آخرین صفحه نظرات) به صورت آژاکس لود نشود، بلکه محتوای اولین صفحه نظرات (شامل نظرات، کپچا و فرم ارسال دیدگاه و...) در سورس پست وجود داشته باشد. اما سایر صفحات دیدگاه ها (دیدگاه های قبلی و بعدی) پس از کلیک کاربر به صورت آژاکسی لود شود. یعنی در سورس اچ.تی.ام.ال هر پست، مثلاً آخرین 5 دیدگاه وجود داشته باشد ولی نظرات بعدی در سورس نباشد و به صورت آژاکسی لود شود.
2- در سورس اچ.تی.ام.ال هر پست، لینک صفحه بندی نظرات و لینک دیدگاه های قبلی و بعدی، عبارت comment-page-num حذف شود. به عبارتی لینک های آژاکسی فاقد URL ثابت باشد و لینک درخواست نظرات قبل و بعد به کمک توابع جاواسکریپت (مانند javascript:void(0) , onclick) ایجاد شود.
3- آدرس یو.آر.ال هنگام کلیک بر روی نظرات قبلی و بعدی و صفحات نظرات، تغییری نکند. (در پلاگین به صورت پیش فرض، پس از لود آژاکسی، یو.آر.ال پست به comment-page-num تغییر می یابد که باید این مورد حذف شود و یو.آر.ال پست پس از کیلک بر روی صفحات دیدگاه ها، ثابت بماند)
4- تغییر متد دریافت کامنت ها از GET به POST
5- در نظر گرفتن آپشن در سورس PHP پلاگین که با فعال کردن آن آپشن، در هنگام بارگذاری یک پست، اولین صفحه از نظرات هم به صورت آژاکس لود شود، یعنی حتی محتوای اولین صفحه نظرات (شامل نظرات، کپچا و فرم ارسال دیدگاه و...) در سورس پست وجود نداشته باشد و پس از لود پست، به صورت آژاکس لود شود. (نیازی به افزودن فیلد در صفحه ادمین وردپرس نیست. فقط بتوان از سورس PHP گزینه را فعال و غیرفعال کرد.)
نتیجه کار (از نظر عملکرد پلاگین در لود آژاکسی) بایستی تقریباً شبیه پلاگین تجاری Commentat باشد که نمونه آن در نظرات پست زیر قابل مشاهده است:
صفحه اول نظرات در سورس HTML موجود است ولی سایر صفحات نظرات، با کمک آژاکس لود می شود.
با تشکر.
*** حق حذف این تاپیک در آینده برای استارتر محفوظ است ***
با سلام.
نیاز به تغییرات در پلاگین وردپرس زیر که برای نمایش نظرات و صفحه بندی نظرات به صورت آژاکس می باشد، دارم.
https://www.tipsandtricks-hq.com/ajax-comment-loading-plugin-fixed-6096
پروژه پیچیده ای نیست، فقط به این دلیل که توضیحات کامل داده شده است، تاپیک طولانی شده است.
هرچند که متاتگ canonical در سئوی صفحه بندی نظرات به اندازه کافی کارآمد است، اما برای اطمینان بیشتر به این پلاگین نیاز است.
کدهای نوشته شده باید استاندارد و به صورت اپن سورس تحویل داده شود. من خودم PHP می نویسم ولی فرصت تست و انجام تغییرات در این پلاگین را ندارم، به همین دلیل این تاپیک را ایجاد کردم.
(برای تست لطفاً از بخش تنظیمات وردپرس، گفتگوها، صفحهبندی دیدگاه ها را فعال کنید و تعداد دیدگاه ها را روی 5 تنظیم و یک پست با تعداد نظرات زیاد را مشاهده نمایید. همچنین لازم است قالب از صفحه بندی نظرات پشتیبانی نماید که درصورت عدم پشتیبانی می توان با فراخوانی تابع paginate_comments_links(); در فایل comments.php قالب، صفحه بندی نظرات را فعال کرد)
تغییراتی که بایستی در پلاگین صورت پذیرد:
1- در پلاگین فوق، به صورت پیش فرض پس از بارگذاری یک پست، تمام بخش نظرات به صورت آژاکسی لود می شود تا نظرات و صفحه بندی نظرات در گوگل ایندکس نشود. حال نیاز است که در هنگام بارگذاری یک پست، اولین صفحه از نظرات (بسته به مقدار تنظیم شده در تنظیمات گفتگو، یعنی اولین یا آخرین صفحه نظرات) به صورت آژاکس لود نشود، بلکه محتوای اولین صفحه نظرات (شامل نظرات، کپچا و فرم ارسال دیدگاه و...) در سورس پست وجود داشته باشد. اما سایر صفحات دیدگاه ها (دیدگاه های قبلی و بعدی) پس از کلیک کاربر به صورت آژاکسی لود شود. یعنی در سورس اچ.تی.ام.ال هر پست، مثلاً آخرین 5 دیدگاه وجود داشته باشد ولی نظرات بعدی در سورس نباشد و به صورت آژاکسی لود شود.
2- در سورس اچ.تی.ام.ال هر پست، لینک صفحه بندی نظرات و لینک دیدگاه های قبلی و بعدی، عبارت comment-page-num حذف شود. به عبارتی لینک های آژاکسی فاقد URL ثابت باشد و لینک درخواست نظرات قبل و بعد به کمک توابع جاواسکریپت (مانند javascript:void(0) , onclick) ایجاد شود.
3- آدرس یو.آر.ال هنگام کلیک بر روی نظرات قبلی و بعدی و صفحات نظرات، تغییری نکند. (در پلاگین به صورت پیش فرض، پس از لود آژاکسی، یو.آر.ال پست به comment-page-num تغییر می یابد که باید این مورد حذف شود و یو.آر.ال پست پس از کیلک بر روی صفحات دیدگاه ها، ثابت بماند)
4- تغییر متد دریافت کامنت ها از GET به POST
5- در نظر گرفتن آپشن در سورس PHP پلاگین که با فعال کردن آن آپشن، در هنگام بارگذاری یک پست، اولین صفحه از نظرات هم به صورت آژاکس لود شود، یعنی حتی محتوای اولین صفحه نظرات (شامل نظرات، کپچا و فرم ارسال دیدگاه و...) در سورس پست وجود نداشته باشد و پس از لود پست، به صورت آژاکس لود شود. (نیازی به افزودن فیلد در صفحه ادمین وردپرس نیست. فقط بتوان از سورس PHP گزینه را فعال و غیرفعال کرد.)
نتیجه کار (از نظر عملکرد پلاگین در لود آژاکسی) بایستی تقریباً شبیه پلاگین تجاری Commentat باشد که نمونه آن در نظرات پست زیر قابل مشاهده است:
کد:
http://mihanwp.com/sahifa/
با تشکر.
*** حق حذف این تاپیک در آینده برای استارتر محفوظ است ***
Last edited: