نکات برنامه‌نویسی

نکات برنامه‌نویسی و رایانه‌ای - امیرمسعود ایرانی

نکات برنامه‌نویسی

نکات برنامه‌نویسی و رایانه‌ای - امیرمسعود ایرانی

استفاده از ربات در ایجاد post در وردپرس

امیرمسعود ایرانی | جمعه, ۱۳ آذر ۱۳۹۴، ۱۰:۵۵ ب.ظ | ۰ نظر

در یکی از پروژه‌ها قصد داشتم تعداد نسبتا زیادی نوشته را از سیستم دیگر به وردپرس منتقل کنم. برای این کار تلاش کردم از یک فرآیند نیمه خودکار استفاده کنم تا زمان کمتری صرف این انتقال شود و اشتباهات انسانی نیز از بین برود.

هر چند عملیات انتقال با موفقیت به انجام رسید، ولی پس از مدتی متوجه شدم که مطالب منتقل شده در وردپرس در صفحات بعد از صفحه‌ی اول با ترتیب نادرست نمایش داده می‌شوند و برخی نوشته‌ها چندین بار تکرار می‌شوند. همچنین برخی نوشته‌ها به صورت کلی به نمایش در نمی‌آیند.

پس از مدتی بررسی و جستجو و با مشاهده‌ی کوئری‌هایی ایجاد شده در زمان نمایش، متوجه شدم که وردپرس نتایج را بر اساس فیلد post_date مرتب‌سازی می‌کند و به دلیل اینکه این فیلد توسط ربات به صورت یکسان برای تمام مطالب وارد شده است، در هنگام مرتب‌سازی این خطا به وجود می‌آید.

برای حل کردن این مشکل، از یک کوئری روی پایگاه داده استفاده کردم که تاریخ‌های وارد شده در پایگاه داده را به شکل زیر و به صورت تصادفی در بازه‌ی تغییر می‌دهد:

UPDATE `s_en_posts` SET
	`post_date` = FROM_UNIXTIME( UNIX_TIMESTAMP( '2015-12-03 21:40:37' ) + FLOOR( 0 + ( RAND( ) * 86400 ) ) ),
	`post_date_gmt` = `post_date`
WHERE
	post_date = '2015-12-03 21:40:37'
  • امیرمسعود ایرانی

ربات

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی