ورد پرس و مشکلی جدی در کلاس wpdb !

ارسال شده توسط بهروز پولادرگ در تاریخ: ۲۳ اسفند ۱۳۸۷

چند روز پیش در انجمن های ورد پرس فارسی به بخشی بر خوردم که به نتیجه نرسیده بود مربوط به عدم نمایش بعضی از قسمتهای سایت در وردپرس میشد که را حل های مثل کم کردن تعداد نمایش مطالب در صفحه و غیره رو براش داده بودن ، البته چون مشکل در هسته ورد پرس بود و همه از اون غافل بودن ، آخه برنامه نویسهای وردپرس هم آدمن دیگه ممکنه اونها هم اشتباه کنن ، بنده هم یه نگاهی با وبلاگ خودم کردم دیدم ای دل غافل مال من هم این مشکل رو داره چون به کد قالبم اطمینان داشتم رفتم سراغ بقیه بخشها با کمی دقت معلوم بود که مشکل از دیتابیس و قطع شدن زود ارتباط با اونه حالا کلاس n خطی wpdb رو کی حال داره بگرده و مشکلش رو پیدا کنه بلاخره بعد از مقدار جستجو در باره این کلاس پی اچ پی به نتجه رسیدم :

http://www.sajithmr.com/wp-content/uploads/2008/04/wordpress-logo.png

متاسفانه در تمامی ورژن های وردپرس مشکلی وجود داره که باعث میشه در بعضی مواقع ارتباط با پایگاه داده به صورت ناگهانی قطع بشه که مشکل خودشو به صورت عدم نمایش برخی از بخشهای سایت مثل( لینکهای سایت یا لیست دسته ها و یا لیست آرشیو ) نشون می ده که دلیل برقطعی ناگهای ارتباط با پایگاه داده می باشد البته در نظر اول مشکل به نظر از قالب می آید که اصلا ربطی بهش نداره مشکل از یک کلاس پی اچ پی می باشد که ورد پرس از آن برای تمامی اتصالات و کوئری های مورد نیازش استفاده میکنه این کلاس بسیا قوی و راحته و با حالتی شی گرا و پرسرعت به عملیات مربوط به پایگاه داده مای اس کیو ال می پردازد، خوب مشکل کجاست ؟ مشکل در بخشی از این تابع می باشد که می بایست یک کوئری برای کمی صبر کردن قبل از پایان دادن به جلسه یا همون سشن مربوطه به مای اس کیو ال به این کد اضافه میشدتا مشکلی پیش نیاد تنها نیاز به یک خط کد می باشد تا دیگه مشکلی برای کلاس پیش نیاد:

خوب فیلی که می بایست ویرایش بشه درپوشه wp-includes می باشد و با نام wp-db.php که می بایست با فایلی که در زیر قرار داده شده جابه جا شود توجه این فایل برای نسخه های مختلف فرق میکنه برای همین در نسخه های مختلف برای دانلود قرار داده شده فایلی را که دریافت می کنید می بایست با ورژن وردپرس شما باشد :

اگه شما هم چنین مشکلی دارید برای دریافت فایل تصیح شده به ادامه مطلب توجه کنید


نسخه ورد پرس ۲/۷/۱

این نسخه تغییری در فایلwp-db.php   با نسخه ۲/۷ نداشته است.
پس میتوانید از فایل نسخه ۲/۷ برای این نسخه استفاده نمایید.

نسخه ورد پرس ۲/۷

فایل با تغییرات لازم Workaround wp-db.php
فایل اصلی Original wp-db.php

نسخه ورد پرس ۲/۶/۱

در این نسخه هیچ گونه تغییری در کلاس wp-db.php نسبت به ورژن ۲/۶ ورد پرس داده نشده

نسخه ورد پرس ۲/۶

فایل با تغییرات لازم Workaround wp-db.php
فایل اصلی Original wp-db.php

نسخه ورد پرس ۲/۵

فایل با تغییرات لازم Workaround wp-db.php
فایل اصلی Original wp-db.php

نسخه ورد پرس ۲/۳/۳

در این نسخه هیچ گونه تغییری در کلاس wp-db.php نسبت به ورژن ۲/۳/۲ ورد پرس داده نشده

نسخه ورد پرس ۲/۳/۲

فایل با تغییرات لازم Workaround wp-db.php
فایل با تغییرات لازم قدیمی Workaround-old wp-db.php
فایل اصلی Original wp-db.php

نسخه ورد پرس ۲/۳/۱

در این نسخه هیچ گونه تغییری در کلاس wp-db.php نسبت به ورژن ۲/۳ ورد پرس داده نشده

نسخه ورد پرس ۲/۳

فایل با تغییرات لازمWorkaround wp-db.php
فایل با تغییرات لازم قدیمی Workaround-old wp-db.php
فایل اصلی Original wp-db.php

نسخه ورد پرس ۲/۲/۳

در این نسخه هیچ گونه تغییری در کلاس wp-db.php نسبت به ورژن ۲/۲/۱ ورد پرس داده نشده

نسخه ورد پرس ۲/۲/۲

در این نسخه هیچ گونه تغییری در کلاس wp-db.php نسبت به ورژن ۲/۲/۱ ورد پرس داده نشده

نسخه ورد پرس ۲/۲/۱

فایل با تغییرات لازم Workaround wp-db.php
فایل با تغییرات لازم قدیمی Workaround-old wp-db.php
فایل اصلی Original wp-db.php

نسخه ورد پرس۲/۱/۲

فایل با تغییرات لازم Workaround wp-db.php
فایل با تغییرات لازمث قدیمی Workaround-old wp-db.php
فایل اصلی Original wp-db.php

توجه شما می بایست فایل دریافتی مربوط به ورژن خود را به نام wp-db.php تغییر نام دهید و به جای فایل wp-db.php در شاخه wp-includes وبلاگ وردپرسودتون باز نویسی کنید

در ضمن لازم به ذکر است که این مشکل بر روی لوکال هاست به دلیل سرعت بالا اجرای عملیات ایجاد نمی شود و فقط بر روی نسخه آنلاین این مشکل به وجود می آید

اگه می خواید بدونید اصلا چه تغییری در این فایل انجام شده به کد زیر دقت کنید این کد تنها خط کدی است که به کلاس افزوده شده که خوش بختانه مشکل رو به درستی حل می کنه :

$this->query("set session wait_timeout=600");

امید وارم که با این مطلب به سرعت تمامی وبلاگهای که این مشکل رو دارن درست بشن و بتونن به درستی به کار خودشون ادامه بدند
لطفا وبلاگ هایی که از این روش استفاده می کنن موفقیت و یا مشکل خودشون رو در بخش نظرات بنویسند ;)
با آرزوی موفقیت و پیروزی روز افزون برای شما دوستان عزیز

یک ستارهدو ستارهسه ستارهچهار ستارهپنج ستاره (2 رای ها, معدل: 300 از 5)
کمی صبر نمایید ... کمی صبر نمایید ...
Balatarin Donbaleh Mohandes ارسال به آئیریانا Delicious Digg Stumbleupon Furl Friendfeed Greader Facebook Twitter Subscribe to Feed
مشترک مطالب پادشاه فلش شويد!

آدرس ایمیل خود را وارد نمایید :

آيا شما از اين مطلب لذت برديد؟ چرا ديدگاه خود را در زير نمي نويسيد و گفتگو را ادامه دهيد، يا مشترک خوراک من شويد و مقاله هايي مانند اين را روزانه توسط ایمیل خود دریافت نمایید.

ساخت بنر فلش در 5 مرحله بدون نیاز به مهارت!


مطالب مرتبط

Display List و اکشن اسکریپت ۳
Display List چیست ؟ Display List لیستی از تمامی اجزاء که دون فلش هستند ، همه چیز هایی...
محاسبه سرعت اینترنت با پی اچ پی
سلام خدمت دوستان عزیز ، این بار هم  یک مقاله کوتاه و مفید  ،  یکی از کدهای...
اکشن اسکریپت ۳ وتفاوتها با اکشن اسکریپت ۲
سلام این بار یک مقاله کامل که از نوشته دوستان در انجمن جمع آوری شده رو...
آپلود فایل با فلش ۸ و پی اچ پی
سلام به دوستان عزیز ؛ بلاخره بعد از مدتها وقت کردم یک مقاله در رابطه با...

۲ پاسخ برای "ورد پرس و مشکلی جدی در کلاس wpdb !"

1 | Hassan

۱۴ شهریور ۱۳۸۸ در ساعت ۱۲:۴۰ ب.ظ

سلام
از مطالب مفیدتون واقعا استفاده کردم /
می خواسم بپرسم این مشکل به متغیر تام آت سرور مربوط می شه درسته؟

باز هم ممنون

2 | بهروز پولادرگ

۱۴ شهریور ۱۳۸۸ در ساعت ۵:۱۶ ب.ظ

ممنون از نظرتون حسن عزیز
بله این موضوع مربوط به wait_timeout می باشد که می بایست توسط query برای دیتا بیس تعریف شود.
این مشکل روی اکثر سروهایی که اشتراکی می باشد وجود دارد ولی توی سرورهای اختصاصی میشه این مشکل رو از راههای دیگه هم حل کرد.
در ضمن این مشکل حتی در آخرین نسخه ۲.۸.۴ هم وجود دارد.
موفق و پیروز باشید.

نوشتن نظر


  • بهروز پولادرگ: سلام نوید عزیز جات خالی بود حسابی... ورک شاپ خوبی بود... اوکی O2 رو دارم .... موفق و پیروز ب
  • زری: سلام مثل همیشه بی نظیری بهروز جان در پناه رسول مهربانی ها موفق و پایدار باشی من خیلی خ
  • نويد: بهروز خان عزیز از اعلام این خبر ممنون... اما متاسفانه یکم دیر مطلع شدم و برای فردا هم نمیت
  • بهروز پولادرگ: دکمه ای با instance name با مقدار mybtn بسازید و از کد زیر استفاده نمایید [sourcecode lang="actionscript3"] mybtn.addE

درباره نویسنده

بهروز پولادرگ

نام و نام خانوادگی : بهروز پولادرگ
متولد : ۵ مرداد سال ۱۳۶۷
حرفه : طراحی وب ، برنامه نویسی ، طراحی گرافیک، ملتی مدیا ، فلش و نرم افزار های تحت وب



من در انجمن مجید آنلاین
مصاحبه من با ایرنا در روزنامه ابرار اقتصادی -بخش رایانه
رزومه من در کلوب دات کام
مجله الکترونیکی گاما مگ

تقویم مطالب

اسفند ۱۳۸۷
ش ی د س چ پ ج
« بهمن   فروردین »
 ۱۲
۳۴۵۶۷۸۹
۱۰۱۱۱۲۱۳۱۴۱۵۱۶
۱۷۱۸۱۹۲۰۲۱۲۲۲۳
۲۴۲۵۲۶۲۷۲۸۲۹۳۰

خبرنامه

آدرس ایمیل خود را وارد نمایید :

با عضویت در خبرنامه مطالب جدید پادشاه فلش به آدرس ایمیل شما ارسال می شود، برای عضویت تنها کافیست آدرس ایمیل خود را وارد نمایید و بر روی دکمه عضویت کلیک کنید

نظرسنجی

مطالب مورد علاقه شما چیست ؟

مشاهده نتایج

بارگذاری ... بارگذاری ...