کرون جاب وردپرس عنوانیه که شاید کمتر به گوش شما خورده باشه و اگر سایت وردپرسی داشته باشید که چندین سال در حال فعالیت هستید شاید حتی به صورت گذری هم نگاهی به کرون جاب وردپرس نکرده باشید، چه برسه به اینکه بخواهید تا به مدیریت کرون جاب وردپرس و مشاهده کارهایی که با استفاده از کرون جاب وردپرس صورت میگیره بپردازید. تا حالا این سوال براتون پیش اومده که عملیات زمانبندی وقتی که نوشتهای را برای انتشار در آینده تهیه میکنید، یا زمانی که افزونهها و قالبهای شما پیغام بهروزرسانی میگیرند به چه شکلی صورت میگیره؟ شاید پیش خودتون بگید که چه کاریه، ساعت و تاریخ نوشته را تعیین میکنیم و نوشته تو زمان تعیین شده منتشر میشه یا اینکه هر زمان افزونهای آپدیت میشه پیغام اون به ما نمایش داده میشه. اما اگر اینطور فکر میکنید سخت در اشتباه هستید.
در این آموزش ما قصد داریم تا به معرفی کرون جاب وردپرس بپردازیم تا با ساختار کرون جاب و مدیریت کارها در وردپرس آشنا بشید و سپس بعد از اینکه با کرون جاب آشنا شدید از اون برای مدیریت سایت وردپرسی خودتون استفاده کرده و به شکل دلخواهی ازش بهره ببرید.
آموزش مشاهده و مدیریت کرون جاب وردپرس
قبل از اینکه به بررسی موضوع بپردازیم لازمه که با برخی تعاریف آشنا بشیم و علاوه بر اون هم به سوالی که در بالا اشاره شد جواب بدیم. اما در کل این نکته را در خاطرتون داشته باشید که کارهایی که در وردپرس برای زمانبندی کردن نوشته، بررسی آپدیت شدن هسته وردپرس، افزونه وردپرس و قالب وردپرس صورت میگیره درست مشابه سیستم عاملهایی نظیر ویندوز و یونیکس توسط کرون جاب انجام میگره که در وردپرس هم ازش استفاده میشه.
کرون جاب وردپرس چیست؟
توی سیستم مدیریت محتوای وردپرس مسئولیت کارها توسط کرون جاب وردپرس(cron job) صورت میگیره که معادل همان کرون جاب در یونیکس و یا cheduled task در ویندوز است. مسئولیت کرون جاب در وردپرس اینه که زمانبندی مطالب، کنترل بهروزرسانی افزونه، قالب و هسته وردپرس و… را در زمان تعیین شده ابتدا بررسی کنه و بعد اگر که یک مسئولیت وجود داشت اون را اجرا کرده و نهایی کند. حالا کارهایی که کرون جاب وردپرس که آن را با wp-cron میشناسیم در سایت ما انجام میگیره درست در دیتابیس ذخیره و مدیریت میشه.
نحوه کارکرد کرون جاب وردپرس به این شکله که هرگاه یک بازدیدکننده وارد سایت شما میشه، فایل wp-cron.php بررسی میکند که آیا مسئولیتی مثل نوشته زمانبندی شده، بررسی موجود بودن بهروزرسانیها در وردپرس و از این قبیل وظایف وجود دارد یا خیر! سپس در صورتی که یک مسئولیت وجود داشت اونو اجرا میکنه. بنابراین تا زمانی که سایت شما بازدیدی نداشته باشه، بهروزرسانی و مطالب زمانبندی شده در زمان تعیین شده انجام نخواهند گرفت. حالا در ادامه برای اینکه بتونید تا وظایفی که توسط کرون جاب وردپرس صورت میگیره را مدیریت و کنترل کنید به معرفی افزونه کرون جاب وردپرس میپردازم تا از اون برای مدیریت کارها در سایت وردپرس خودتون استفاده کنید.
مدیریت کارها در وردپرس با کرون جاب
افزونهای که قصد معرفی اونو دارم با نام WP Crontrol در مخزن وردپرس به ثبت رسیده و تاکنون تونسته تا بیش از 60.000 نصب فعال و کسب امتیاز 4.9 را ازآن خودش بکنه که با استفاده از این افزونه میتونید اقدام به مدیریت کارها در وردپرس و کنترل cron job کنید.
بعد از نصب و فعال سازی افزونه مشابه تصویر زیر منویی با نام Cron Events در بخش ابزارها پیشخوان سایت وردپرس شما اضافه میشه، روی این منو کلیک کنید تا به صفحه افزونه و مدیریت کارها در وردپرس هدایت شوید.
حالا همونظور که در تصویر میبینید لیستی از کارها و مسئولیتهایی که درست در بخش پنهانی وردپرس فعالیت میکنند در حال انجام و بررسی هستند که میتونید با استفاده از این افزونه این کارها را کنترل و مدیریتکنید. در این صفحه قادرید تا لیست مسئولیتهای در دست بررسی و اجرا را در بخش Hook Name ، زمان اجرای کارها را در ستون Next Run و کنترل هر یک از این کارها را که میتونید اقدام به ویرایش، اجرا کارها به صورت دستی و یا حذف آنها کنید را در ستون مدیریت کنترل کنید.
ویرایش کرون جاب وردپرس
اگر که قصد ویرایش یکی از این کارها را دارید کافیه تا ابتدا مشابه تصویر زیر اون کاری را که قصد دارید ویرایش کنید را انتخاب و سپس روی گزینه Edit کلیک کنید. در نمونه زیر من قصد دارم تا کنترل بهروزرسانی برای پوستههای وردپرس را تغییر بدم.
بعد از کلیک روی گزینه ویرایش cron job مربوط به بهروزرسانی قالب وردپرس وارد صفحهای مثل تصویر زیرخواهید شد که با استفاده از این صفحه میتونید تا زمان اجرای کرون جاب برای بررسی موجود بودن بهروزرسانی قالب وردپرس را در بخش Next Run بر اساس زمان محلی و تاریخ تعیین شده سایت هست را انجام بدین. همونطور که در قسمت Recurrence هم میبینید بررسی بهروزرسانی قالب وردپرس در هر 12 ساعت یکبار صورت میگیره که قادرید این زمان را تغییر دهید.
حالا اگر که قصد دارید تا زمان بررسی را به دلخواه خودتون تغییر بدین کافیه یکی از گزینههای موجود در گزینه Recurrence را که شامل موارد زیر هستند انتخاب کنید:
- هر 5 دقیقه
- هر ساعت یکبار
- هر 12 ساعت یکبار
- هر روز
- و در نهایت هر ماه
افزودن کرون جاب در وردپرس
حالا اگر که میخواهید تا یک کرون جاب جدید در وردپرس بسازید کافیه تا ابتدا روی زبانه Add Cron Event کلیک کرده و سپس مشابه تصویر زیر اطلاعات مربوط به کرون جاب را وارد کنید تا کاری که در نظر گرفتید به صورت خودکار در زمان تعیین شده انجام بگیره.
حال همانطور که در تصویر میبینید نام هوک، آرگومان، تاریخ و زمان اجرای بعدی هوک و دوره زمانی برای هر بار اجرای کار در cron job وردپرس را تعیین کرده و در نهایت بر روی دکمه Add Cron Event کلیک کنید تا مسئولیت تعیین شده در سایت اضافه بشه. حالا برای اینکه لیست کرون جاب شما در صفحه مورد نظر قابل مشاهده باشه وارد هاست خودتون شده و روی گزینه File Manager کلیک کنید تا به صفحه مدیریت فایلها در وردپرس هدایت شوید. سپس به مسیر /public_html/wp-content/themes/ مراجعه کرده و وارد پوشه فایل قالب خودتون شده و در این پوشه به دنبال فایل فانکشن(functions.php) بگردید و در نهایت کدهای زیر را در مکان مناسبی از این فایل قرار داده و ذخیره کنید.
حالا همونطور که در کد بالا میبینید به جای ایمیل you@example.com هم ایمیل خودتون را وارد کنید. بدین ترتیب هر زمان که کرون جاب شما اجرا شود توسط این تابع قادر خواهید بود تا از طریق ایمیل از آن مطلع شوید. حالا از طریق events به لیست وظائف سایت خودتون مراجعه کرده و آن را مشاهده و کنترل کنید.