سرعت پایین وردپرس به دلیل استفاده مستقیم از WP_Query در قالب است !
آخرین بروز رسانی:
آکادمی وردپرس واقعی
دوره جامع مدیریت حرفه ای استارتاپ های وردپرس با خط فرمان و ابزار پکیج منیجر
در دوره جامع WP-CLI یاد خواهید گرفت، به شکل کاملا حرفه ای و با سرعت بیش تر یک یا چند وب سایت وردپرسی خود را مدیریت کنید.عملیات تکراری در مدیریت وردپرس را برای کاهش هدر رفت زمان خود سیستم سازی کنید. وردپرس شما در حین کار با خط فرمان فشار کم تری به سرور ایجاد می کند و این رویکرد می تواند وب سایت شما را بدون نقص و با سرعت عالی ارائه دهد
- محتوای آموزشی: ۴۶ جلسه آموزشی شامل ۱۶ ساعت ویدیو آموزشی به همراه تمرینات و فایل PDF خلاصه محتوا
- پروژه عملی دوره: نصب و مدیریت کامل بخش های یک استارتاپ وردپرس در هاست
- کلاس رفع اشکال: کلاس آنلاین ۳۰ دقیقه ای در پایان دوره به صورت کاملا خصوصی با استاد درزی برای تثبیت محتوا و رفع اشکالات دانشجو
۳,۶۹۷,۰۰۰ تومان
پرفروش ترین افزونه ها
اتصال و هماهنگی دو یا چند وب سایت فروشگاه ووکامرس
اتصال و یکپارچه سازی اطلاعات کامل محصولات (متغیر ، ساده ، خارجی و ..) ، مدیریت لیست سفارشات بین یک یا چند فروشگاه ووکامرسی با قابلیت وب هوک و ثبت تغییرات آنی و ایجاد عملیات گروهی ثبت یا ویرایش محصولات بین سایت ها در سریع ترین زمان
۴,۸۳۰,۰۰۰
۲,۶۴۰,۰۰۰ تومان
اتصال یک یا چند پنل فروشندگان دیجی کالا به افزونه فروشگاه ساز ووکامرس
اتصال و هماهنگی بخش محصولات ، و سفارشات پنل فروشندگان دیجی کالا با افزونه فروشگاه ساز ووکامرس ، همراه با قابلیت بروزرسانی هماهنگ موجودی ها و قیمت های محصول و مدیریت لیست سفارشات دیجی کالا در مدیریت وردپرس
۱,۸۰۰,۰۰۰
۱,۴۰۰,۰۰۰ تومان
اتصال نرم افزار حسابداری ترنج رهیافت (داده فا) به افزونه فروشگاه ساز ووکامرس
اتصال دو طرفه بخش انبارداری یا محصولات و فاکتور های نرم افزار حسابداری ترنج رهیافت با افزونه فروشگاه ساز ووکامرس ، همراه با قابلیت بروزرسانی هماهنگ موجودی ها و قیمت های محصول ، ایجاد فاکتور های اتوماتیک به نام مشتریان وردپرس در نرم افزار حسابداری
۱۰,۰۰۰,۰۰۰
۸,۵۹۷,۰۰۰ تومان
اتصال نرم افزار حسابداری سپیدار همکاران سیستم به افزونه ووکامرس به همراه پکیج وب سرویس دو طرفه
اتصال دو طرفه بخش انبارداری یا محصولات و فاکتور های نرم افزار حسابداری سپیدار از شرکت همکاران سیستم با افزونه فروشگاه ساز ووکامرس ، همراه با قابلیت بروزرسانی هماهنگ موجودی ها و قیمت های محصول ، ایجاد فاکتور های اتوماتیک به نام مشتریان وردپرس در نرم افزار حسابداری
۱۵,۷۳۰,۰۰۰
۱۲,۴۳۰,۰۰۰ تومان
اتصال نرم افزار حسابداری دشت همکاران سیستم به افزونه فروشگاه ساز ووکامرس
اتصال دو طرفه بخش انبارداری یا محصولات ، مشتریان و فاکتور های نرم افزار حسابداری دشت همکاران سیستم با افزونه فروشگاه ساز ووکامرس ، همراه با قابلیت بروزرسانی هماهنگ موجودی ها و قیمت های محصول ، ایجاد فاکتور های اتوماتیک به نام مشتریان وردپرس در نرم افزار حسابداری
۱۲,۰۰۰,۰۰۰
۸,۴۷۰,۰۰۰ تومان
اتصال نرم افزار حسابداری راهکاران همکاران سیستم به افزونه فروشگاه ساز ووکامرس
اتصال دو طرفه بخش انبارداری یا محصولات ، مشتریان و فاکتور های نرم افزار حسابداری راهکاران از شرکت همکاران سیستم با افزونه فروشگاه ساز ووکامرس ، همراه با قابلیت بروزرسانی هماهنگ موجودی ها و قیمت های محصول ، ایجاد فاکتور های اتوماتیک به نام مشتریان وردپرس در نرم افزار حسابداری
۲۵,۰۰۰,۰۰۰
۱۸,۶۳۰,۰۰۰ تومان
اتصال نرم افزار حسابداری هلو به افزونه فروشگاه ساز ووکامرس به همراه پکیج وب سرویس دو طرفه
اتصال دو طرفه بخش انبارداری یا محصولات ، مشتریان و فاکتور های نرم افزار حسابداری هلو با افزونه فروشگاه ساز ووکامرس ، همراه با قابلیت بروزرسانی هماهنگ موجودی ها و قیمت های محصول ، ایجاد فاکتور های اتوماتیک به نام مشتریان وردپرس در نرم افزار حسابداری
۱۸,۰۰۰,۰۰۰
۱۳,۸۴۰,۰۰۰ تومان
اتصال نرم افزار حسابداری کیان نور رایانه به فروشگاه ساز ووکامرس
اتصال دو طرفه بخش انبارداری یا محصولات و فاکتور های نرم افزار حسابداری کیان نور رایانه با افزونه فروشگاه ساز ووکامرس ، همراه با قابلیت بروزرسانی هماهنگ موجودی ها و قیمت های محصول ، ایجاد فاکتور های اتوماتیک به نام مشتریان وردپرس در نرم افزار حسابداری
۱۸,۰۰۰,۰۰۰
۱۳,۸۴۰,۰۰۰ تومان
اتصال استاندارد رسانه های وردپرس ، فایل های ووکامرس ، EDD و گرویتی فرم به هاست دانلود
افزایش هشتاد درصدی سرعت وب سایت های وردپرس با اتصال تصاویر ، ویدیو ، صوت و فایل های فروشگاه ووکامرس ، Easy Digital Downloads و گرویتی فرم به هاست دانلود با قابلیت تغییر لینک اتوماتیک رسانه ها در محتوا و محافظ از سرقت فایل فروشی
۲,۰۰۰,۰۰۰
۱,۸۷۰,۰۰۰ تومان
رضا
سلام خیلی مفید بود. لطفا در مورد بهینه نوشتن کد ها در وردپرس بیشتر مقاله تولید کنید و یک سوال هم دارم برای ایجاد یک سلسله نوشته به صورت شبکه با اندازه تصاویر متفاوت و از قبل تعیین شده بهترین روش چیست من مثلا از حلقه های وردپرس به صورت تو در تو استفاده کردم و میدونم اصلا بهینه نیست ولی راه حلی رو پیدا نکردم لطفا راهنمایی کنید برای درک بهتر سوالم تصویر زیر رو ببینید:
http://s9.picofile.com/file/8355251076/02f3bb1e_c81a_4878_8d41_8ae28af6470e.png
مهرشاد درزی
شما برای این کار هم میتوانید مثل روش بالا تمامی نیاز هاتون رو در آرایه بزارید و در زمان لود فقط پوش کنید توی html براحتی. ی چیزی یادتون نره وردپرس قبل از اینکه وردپرس باشه با php نوشته شده پس حتما MVC رو داخل وردپرس فراموش نکنید اگر شما برای خودتون view جداگونه داشته باشید روش بالا هر نوع ظاهری قابل پیاده سازی هست. پیشنهاد میکنم timber رو حتما مطالعه کنید برای ایجاد view حرفه ای در وردپرس.
رضا
به نظرم کار خیلی خوبی هستش فقط یه سوال الان مثلا ما از این روش تو قالبمون استفاده کنیم اگه قبل از نصب قالب ما نوشته هایی باشه اونها چطوری ذخیره میشن؟ در موردش لطفا توضیح بدید
حامد شفیعی
شما کافیه یه پست اضافه کنی و یا اکشن رو فراخوانی کنی
خودکار به روز رسانی میشه
رامین نادری
جالب بود . با تشکر
امیر
سلام
خیلی مطلب خوبی بود از نظر من که تازه کارم
من اگر بخواهم آخرین مطلب های یک دسته بندی خاصت رو بگیره باید چی کار کنم
چون تا جایی که فهمیدم ، این کد آخرین مطالب که منتشر میشه رو میگیره
مهرشاد درزی
امیر جان عزیز شما باید به عنوان یک توسعه دهنده وردپرس با تمامی پارامتر های کلاس WP_Query تسلط 100 درصد داشته باشی. برای افزودن مطالب در یک دسته بندی از پارامتر های Category در WP_Query باید استفاده کنیید.
لینک مرجع در WordPress Reference:
https://developer.wordpress.org/reference/classes/wp_query/#category-parameters
مهدی جباری
واقعا بی نظیرید اقای درزی
اولین جایی رو دیدم که واقعا داره وردپرس رو به حرفه ای ترین شکل ممکن تحلیل و بررسی میکنه
من تو برنامه نویسی خیلی حرفه ای نیسم ولی دلم نیومد برای این محتوای با کیفیت کامنت نزارم
بی شک تو ایران نظیر ندارید
بدرخشی استاد
امیرعلی حبیبی
با سلام و تشکر بابت مطلب مفیدتان.
بنده در حال ایجاد یک تم فوق پیشرفته برای وردپرس هستم؛
و طبیعتا نیاز به سفارشی کردن برای خریداران وجود دارد(منظور از سفارشی سازی، تغییر در چیدمان، نمایش چه محتوایی چه جایی و...)
دو نکته پیش می آید:
1. اگر اطلاعات زیادی به جدول Option اضافه شود مشکلی پیش نمی آید؟
2. اگر فانکشنی که برای مثال نوشتید، دارای متغیر هایی باشد، باز هم همان عملکرد را خواهد داشت؟(مثلا یک تابع مینویسم و با استفاده از متغیر های آن ، اطلاعات دلخواه کاربر را میگیرم)
ممنون میشم پاسخ بدهید.
مهرشاد درزی
فیلد option_value در وردپرس بصورت Longtext هست. و میتواند مقادیر زیادی رو در خود جای دهد و شما نگرانی از این بابت نخواهید داشت. اما ایجاد رکوردهای زیاد و بی معنی بصورت پی در پی دقیقا کاری که Transient انجام میده رو اصلا پیشنهاد نمیکنم چون بسیار صدمه میزنه.
در مورد سوال دوم نیز پاسخ آری هست و شما میتوانید محاسبات و توابعی که دارید رو انجام بدید و تنها خروجی رو بصورت آرایه ذخیره کنید و در سمت سایت نشون بدین این طوری پروسس های CPU هم بسیار کم تر میشن.
مصطفی
عالی . تشکر از شما
mehdi
ممنون از سایت خوبتون ولی یک ایراد یا ابهام بزرگی به این تکنیک دارم که ممنون میشم پاسخ بدید
فرض کنیم ما یک سایت مجله خبری داریم که 10 قسمت کوئری به 10 دسته بندی مختلف داره
بخش های محبوب ترین مقالات و جدیدترین مقالات و پیشنهاد سردبیر هم داره
شد 13 تا کوئری ، ما 13 تا فانکشن باید بنویسیم حالا ؟
اگه این تئوری درست باشه ، یعنی بکند سایتو قربانی فرانت سایت کردیم
این تکنیک اگر یک خوبی داشته باشه ، 10 تا ایراد داره به نظرم
از شلوغ شدن دیتابیس تا شلوغ شدن کد تا بسته بودن دست تو کدنویسی و ...
مهرشاد درزی
روشی که در مقاله بیان شد برای کش کردن اطلاعات در درخواست های زیاد وردپرس هست ، همان طور که می دانید وردپرس دو مدل کش داره Object Cache و Database Cache که بصورت پیش فرض ما اون دیتابیس کش رو در Transient قرار میدیم.اگر شما صرفا چند تا بخش محبوب ترین ها و این موارد رو دارین که خوده Object Cache در هسته ی وردپرس این عملیات رو براتون انجام میده و فقط کافیه وردپرس رو با Redis یا Memory cache یا هر ابزار دیگه ای که با Object cache کاملا Compatibility هست کانکت کنید ، مثل افزونه های کش که بخش Object Database دارن و اصلا نیازی به مدل دوم دیتابیس یعنی Transient Cache نیست.
سینا صفا زاده
از wp-json استفاده کنیم برای گرفتن پست ها راحت تر نیست ؟ خود وردپرس گذاشته راهکارشو
مهرشاد درزی
مبحث wp-json برای استفاده از REST API وردپرس در پلتفرم های دیگه هست. اگر چه داخل هسته ی وردپرس در بخش REST API نیز از کلاس WP_Query استفاده میشه. اگر شما از وب سرویس وردپرس لاگ دیتابیس بگیرید به این موضوع پی خواهید برد.
سینا صفا زاده
بله کاربرد دیگری داره ولی خب میشه ازش داخل همون سایت هم استفاده کرد ، فقط کافیه json رو بخونیم و نیازی به wp query زدن نیست (با هر بار آپدیت ، خود وردپرس اون فایلو ادیت میکنه) ، درست هست ؟
مهرشاد درزی
زمانی که شما یک درخواست به API وردپرس می زنید، داخل همون درخواست در هسته ی وردپرس در اصل داره از همون WP Query استفاده میکنه پس در هر حالتی دیتابیس درگیر هست. مگر این که از کش سمت کلاینت استفاه کنید که خودش چالش هایی رو داره.
البته این ذهنیت شما برای استفاده از REST کاملا قابل تحسین هست.پیشنهاد میکنم مطلب "برنامه نویسی قالب وردپرس بر اساس متد یکسازی سازی REST API" رو در آکادمی مطالعه کنید.
ایوب زارع
سلام و درود
من میخام جدیدترین محصولات سایتم رو نشون بدم :
اول اومدم از rest api استفاده کرده ، بعد از لود سایت یک درخواست ایجکس از rest api محصولات رو میخوندم و داخل صفحه مورد نظر لود میکردم
بعد دیدم اگر کویری بزنم به دیتابیس سریع تر میشه ،شبیه اون مثال اول کوئری زدم سمت دیتابیس من که نمیتونم از اکشن خاصی استفاده کنم درسته لطفا یه راهنمایی میکنید چظوری بنویسم بهتر هست؟
برای نمایش محصولات از شورت کد استفاده کردم
مهرشاد درزی
در صورتی که می خواهید با PHP اطلاعات محصول را نمایش دهید بهترین گزینه همان اسفاده از WP_Query هست ، همچنین می توانید از بحث کش کردن اطلاعات که در این مقاله بیان شده استفاده کنید تا کوئری کم تری سمت دیتابیس ارسال شود.