مدیریت Cron Jobs در وردپرس با افزونه WP Crontrol
- افزونه وردپرس
- بروزرسانی شده در
زمانبندی دستورالعملها یکی از کارهایی است که شما در انجام هرچه بهتر و باکیفیتتر کارهایتان یاری میکند. این زمانبندی نه تنها در زندگی روزمره بلکه در نرمافزارهای کامپیوتری نیز کاربرد خاص خودش را دارد و به شما در رسیدن بهتمامی اهدافتان یاری لازم را میرساند. درواقع مدیریت زمان ازجمله فاکتورهای مهم است که شما باید به آن اهمیت زیادی دهید. این کار یک نوع مهارت است که توجه به آن ضروری است.
شما باید از تکنیکهای زیادی در سایت خود جهت بالا بردن کیفیت آن استفاده کنید. با استفاده از کارهای مختلفی شما میتوانید سایت خود را بهبود داده و کارایی آن را بالا ببرید. شما باید بتوانید سایت خود را بهخوبی مدیریت کنید و برای تمامی امور برنامهریزی داشته باشید. بهاینترتیب میتوانید یک سایت باکیفیت داشته و بر روی مخاطب خود تأثیر بگذارید.
عوامل مختلفی در سایت شما وجود دارد که باید آنها را کنترل کنید. ما در میهن وردپرس سعی میکنیم این موارد را به شما کاربران عزیز آموزش دهیم. امروز در این مقاله مدیریت Cron Job ها در وردپرس را برای شما آموزش میدهیم.
آنچه در این مقاله میخوانید
کران جاب چیست
کرون یک تکنولوژی برای اجرای زمانبندی دستورالعملها در وردپرس میباشد. وردپرس خود بهگونهای ساختهشده است که با استفاده از یک Cron داخلی بتواند از زمانبندی دستورالعملها استفاده نماید. مانند چک کردن برای بهروزرسانی، انتشار لیستهای زمانبندی شده و….
کرون در وردپرس وظیفه دارد دستورالعملهای خاص را بهصورت زمانبندی شده برای کاربران سایت شما اجرا و منتشر کند. این کار بهوسیله فایل WP-Cron.php انجام میشود. شما میتوانید بهعنوان مدیر سایت برنامههایی که نیاز به زمانبندی دارد را مشخص کنید تا بهوسیله این قابلیت منتشر شوند.
بنابراین برای اینکه برنامههای خود را بتوانید زمانبندی کنید میتوانید از قابلیت خوب وردپرس استفاده کنید. ما در اینجا نحوه کار با کرونها بدون کد نویسی را به شما آموزش میدهیم.
Cron job وردپرس چیست
کرون یک اصطلاح تکنیکی برای دستورالعملهایی است که میخواهیم طبق یک زمانبندی خاص یا در فواصل منظم اجرا شوند. سیستم مدیریت محتوای قدرتمند وردپرس از یک برنامه زمانبندی درونی برای اجرای برخی از دستورالعملهای خود استفاده میکند.
بهعنوانمثال چک کردن برای بهروزرسانیها، پاک کردن کامنتهای قدیمی و…. همچنین یکی از مزیتهای استفاده از کرون ارسال ایمیلهای خودکار برای کاربران است. چراکه شما در سایت خود ممکن است برای موارد زیادی با این مورد مواجه شوید. به همین دلیل میتوانید با خیال راحت این کار را توسط این قابلیت انجام دهید.
پلاگینها نیز میتوانند برای اجرای دستورالعملها از یک برنامه زمانبندی شده استفاده کنند. برای مثال پلاگین Backup در وردپرس برای انجام عملیات خود در فواصل زمانی مشخص از Cron استفاده میکند. البته در نظر داشته باشید که اگر این پلاگین مکرراً و شدید یک کاری را انجام دهد شما باید مشکل را شناسایی و برطرف نمایید.
شما توسط این قابلیت میتوانید کارهایی که قصد دارید هرروز در سایت خود انجام دهید را توسط کرون انجام دهید. این کار بهصورت کاملاً خودکار و بدون دخالت دست قابل انجام است. همچنین این نکته را در نظر داشته باشید که این قابلیت تنها در سیستمهای لینوکسی قابلاجرا است.
آموزش زمانبندی کران جابها در وردپرس
برای انجام این کار در ابتدا شما باید پلاگین WP Crontrol را در سایت خود نصب کنید. این افزونه قدرتمند را میتوانید از مخزن وردپرس دریافت کنید. همچنین برای جزئیات نصب این پلاگین به آموزش نصب افزونه در وردپرس مراجعه کنید.
پس از نصب افزونه در سایت خود در قسمت “Activation” به صفحه ابزارها –> Cron Event بروید تا مرحلهبهمرحله تنظیمات را انجام دهید.
در اینجا شما لیستی از تمام رویدادها را مشاهده مینمایید که باید روی سایت خود توسط سیستم کرون در وردپرس اجرا شوند.
اسم رویدادها معمولاً بهگونهای است که مشخص میکند چه دستورالعمل خاصی باید اجرا شود.
به این نکته توجه داشته باشید که اسم دستورالعملها به پیشوند wp_ … آغاز میشود. مانند wp_update و…
علاوه بر این پلاگینهای وردپرس ممکن است از پیشوندهای خاص خودشان برای نامگذاری استفاده کنند. بهعنوانمثال پلاگین Yoast Seo از پیشوند Wpseo_…… استفاده میکند.
با استفاده از این پلاگین میتوان زمان بعدی اجرای یک دستورالعمل را تعیین کرد و همچنین فاصله زمانی بین تکرار اجراهای آن را مشخص نمود.
آخرین ستون از این جدول این امکان را به شما میدهد تا Cron ها را ایجاد، حذف و ویرایش نمایید.
در کار با ستون آخر از این جدول نهایت دقت را داشته باشید تا کرونهای مربوط به وردپرس را حذف نکنید.
برای ویرایش هر کرون از لیست روی گزینه “Edit” در ستون آخر کلیک کنید تا یک تب جدید در زیر جدول بانام “Modify cron event” ایجاد شود.
در این قسمت میتوانید تنظیمات موردنظر خود مانند اجرای رویداد موردنظر و زمان تکرار اجرای رویداد را برای هر دستورالعمل وارد کرده و با ذخیره تنظیمات از اجرای زمانبندی دستورالعمل در وردپرس استفاده نمایید.
اضافه کردن زمانبندی شخصی به وردپرس
شما بهراحتی میتوانید Cron موردنظر خود را در وردپرس بسازید. برای این منظور به صفحه ابزارها > Cron Event رفته و روی تب “Add Cron Event” کلیک کنید.
در پنجره باز شده مانند تصویر بالا مراحل زیر را انجام دهید:
انتخاب نام برای رویداد موردنظر
- بین حروف نامی که انتخاب میکنید نباید فاصله (space) باشد.
- از متغیرهای مجاز برای نامگذاری استفاده کنید.
ارائه استدلال
- اگر رویداد مورد نظرتان نیاز به استدلال خاصی دارد، میتوانید استدلال مورد نظرتان را در فیلد دوم وارد نمایید.
مشخص کردن زمانبندی
- در این قسمت باید زمان بعدی اجرای دستورالعمل و دوره تکرار اجرا را مشخص نمایید.
پس انجام مراحل بالا برای ذخیره کرون ایجادشده روی دکمه “Add Cron Event” کلیک نمایید.
اگر این کرون اجرا شود هیچ اجرای خاصی را مشاهده نمیکنید. برای اجرای یک کرون باید به وردپرس بگویید چه دستورالعملی اجرا شود که کد مربوط به اجرا را در فایل فانکشن مینویسید.
بهعنوانمثال اگر بخواهیم در زمان اجرای یک رویداد خاصی، ایمیلی برایمان ارسال شود کد زیر را باید به فایل فانکشن اضافه کنید.
if ( ! wp_next_scheduled( 'wpb_custom_cron' ) ) {
wp_schedule_event( time(), 'hourly', 'my_task_hook' );
}
add_action( 'wpb_custom_cron', 'wpb_custom_cron_func' );
function wpb_custom_cron_func() {
wp_mail( 'you@example.com', 'Automatic email', 'Automatic scheduled email from WordPress to test cron');
}
حال روی گزینه “Run Now” در ردیف مربوط به رویداد خود کلیک میکنیم که اگر تمام مراحل را بهدرستی انجام داده باشید یک ایمیل به آدرسی که وارد کردهاید ارسال میشود.
توجه داشته باشید که برای استفاده از کرونها شما باید سطح متوسطی از PHP و سطح پیشرفتهای از وردپرس را آموزشدیده باشید.
پیروز و سربلند باشید. 🙂
با درود فراوان
من یه کرون جاب دارم که در اون کد update_post_meta(307,’_edit_last’, 2); رو گذاشتم ولی اجرا نمیشه.
به نظر شما چطور میتونم از طریق کرون جاب با دیتا بیس و این نوع کدها کار کنم؟
با سپاس فراوان….
سلام
https://mihanwp.com/wp-cron-error/
این مقاله رو مشاهده کنید
سلام ربات من الان مدتی این ارور میده توروخدا کمکم کنیدرو سایت های دیگ تست کردم کار میکنه
http://uupload.ir/files/np8_screenshot_۲۰۱۷-۱۲-۱۵-۰۵-۵۱-۰۰.png
سلام این مراحل رو طی کنید https://mihanwp.com/troubleshooting/
خیلی مطلب خوبی بود ممنونم