جلوگیری از انتشار ناخواسته مطالب در وردپرس
یکی از مشکلاتی که برای مسترکد هم چند باری پیش آمده و مطمئنم شما هم با آن بیگانه نیستید، انتشار ناخواسته ی مطلبی است که هنوز ویرایش و نوشتنش به پایان نرسیده. اگر از آن دسته مدیران سایتی باشید که اهل نوشتن مقالات و آموزش های طولانی و زمانبر باشید، حتما دست کم یکی دو باری برای شما هم پیش آمده که اشتباها در میان کار کردن روی نوشته ی خوشمزه تان، به صورت ناگهانی آن را منتشر کرده باشید در حالی که هدف شما صرفا ذخیره ی یک نسخه ی پیش نویس از آن بوده است. لازم هم نیست به این نکته اشاره کنم که انتشار ناخواسته ی یک مطلب در وبسایتی که به صورت اتوماتیک به کاربرانش خبرنامه ارسال میکند، چقدر میتواند بد و زشت باشد!
ولی خوب، خوشبختانه مثل تمامی مشکلات دیگر، این مشکل هم چاره ای دارد و ما هم امروز تصمیم داریم با هم به رفع این مشکل بپردازیم. مسترکد ابتدا تصمیم داشت که برای حل این مشکل افزونه ی Publish Confirmation را به شما معرفی کند ولی خوب از آنجایی که این افزونه بیش از دو سال است که به روز رسانی نشده گفتیم شاید بهتر باشد که مثل همیشه خودمان دست به کار شویم و چند خطی کد بنویسیم و کنترل اوضاع را به دست بگیریم.
هدف این است کاری کنیم که از این به بعد وقتی در یک نوشته روی دکمه ی “انتشار” کلیک میشود، وردپرس گرامی از ما سوال کند که آیا واقعا مایل به انتشار نوشته هستیم یا خیر. برای انجام این کار کافی است کد زیر را در فایل functions.php پوسته ی خود قرار دهید :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | // This is the confirmation message that will appear. $c_message = 'مطمئنید میخواهید این نوشته را منتشر کنید؟'; function confirm_publish(){ global $c_message; echo '<script type="text/javascript"><!-- var publish = document.getElementById("publish"); if (publish !== null) publish.onclick = function(){ return confirm("'.$c_message.'"); }; // --></script>'; } add_action('admin_footer', 'confirm_publish'); |
و اما نتیجه ی کار میشود چیزی مشابه تصویر زیر :
در دیالوگ بالا، اگر شما بر روی cancel کلیک کنید، صفحه در حالت فعلی خود باقی خواهد ماند و شما میتوانید به ویرایش نوشته ادامه دهید بدون اینکه مطلب شما به صورت ناخواسته و تصادفی منتشر شده باشد و اگر هم ok را کلیک کنید، مطلب به صورت طبیعی و به روال عادی خود منتشر خواهد شد.
به همین خوشمزگی و با یک ترفند کوچک از شر یک مشکل آزار دهنده خلاص شدیم. امیدوارم از این مطلب لذت برده باشید.
عالی بود