آموزش ساخت شورت کد وردپرس نمایش آخرین مطالب وردپرس
آموزش ساخت شورت کد وردپرس نمایش آخرین مطالب وردپرس
در این آموزش توابع وردپرس به آموزش ساخت شورت کد وردپرس نمایش آخرین مطالب وردپرس می پردازیم.
اگر کمی با وردپرس کار کرده باشید، مطمئناً با عبارت شورت کد (shortcode) یا کد کوتاه مواجه شده اید. اما اینکه شورت کد چیست و در سایت وردپرسی شما چه کاری انجام می دهد چیزی است که باید در مورد آن بیشتر توضیح داده شود.
توضح در مورد شورت کد وردپرس
استفاده از المانهای زیبا یکی از راههایی هست که میشه ظاهر سایت وردپرسی را به کلی دگرگون کرد. همه ما نیاز به قابلیتهایی در وردپرس داریم که با استفاده از اون بتونیم اقدام به ساخت شورت کد در وردپرس کرده و با استفاده از همین شورتکدها بتونیم در نوشتهها و ابزارکهای وردپرس اقدام به نمایش و قرار دادن دکمه دانلود در وردپرس، ساخت باکس دانلود در وردپرس، ساخت انواع تب در وردپرس، ساخت گالری در وردپرس و… بکنیم. این قابلیت باعث میشه که محتوای صفحات ما ظاهر بهتری داشته باشه و کاربران رو حسابی مجذوب خودش بکنه. اما امکان استفاده از انواع دکمه و باکس در وردپرس هم لازمهاش داشتن قالبی پیشرفته هست که این قابلیت ها را در خودش داشته باشه که ممکنه در حال حاضر قالب شما از امکان افزونه دکمه دانلود برای وردپرس پشتیبانی نکنه. پس در این صورت چاره چیه؟ چطور میتونیم دکمهها و باکسهای رنگی زیبا رو همراه با آیکون در وردپرس نمایش بدیم؟
شورت کد وردپرس کی به وردپرس اضافه شد ؟
شورت کد از نسخه ۲.۵ به بعد در سیستم مدیریت محتوا وردپرس اضافه شد و برای کارهای مختلف قابلاستفاده است. shortcode، قطعه کدی کوتاه است که به شما امکان نوشتن کدهای قالبها و افزونهها را در نوشتهها و برگههای سایت وردپرسی میدهد. بهعنوانمثال برای قرار دادن یک فرم تماس با ما در سایت نیاز به چندین خط کد نویسی دارد اما باوجود این امکان اصلاً نگران نباشید چراکه با نوشتن تنها یک کد چندحرفی این امکان بر روی سایت شما قرار میگیرد. شورت کدها برای ایجاد امکانات متفاوت ازجمله فرم، خبرنامه، دکمه و … مورداستفاده قرار میگیرد. کافی است کد موردنیاز را در قسمتی که لازم دارید قرار دهید.
چرا از کد کوتاه یا همان شورت کد در وردپرس استفاده می شود؟
از آنجا که وردپرس یک پلتفرم منبع باز (open source) است، شما می توانید آن را به هر نحوی که دوست دارید، سفارشی کنید. یعنی می توانید یک کد کاملاً جدید به سایت وردپرسی خود اضافه کنید.
توسعه دهندگان دانش آن را دارند که با استفاده از کدهای PHP، ویژگی های خاصی را به یک وب سایت وردپرسی اضافه کنند.
اما کاربرانی که با PHP آشنایی ندارند و توسعه دهنده نیستند، نمی توانند این کار را برای سایت وردپرسی خود انجام دهند.
به همین دلیل توسعه دهندگان شورت کدهای سفارشی را ایجاد کردند.
از طرف دیگر، هر محتوایی که به سایت وردپرسی شما اضافه می شود، از تعدادی فیلتر و بررسی های امنیتی عبور می کند.
این فیلتر ها و بررسی های امنیتی برای این است که کدهای مخرب وارد برگه ها، نوشته ها، کامنت ها و دیگر موارد سایت شما نشوند.
به همین دلیل شما نمی توانید در این مناطق به طور مستقیم کد بنویسید.
اما گاهی اوقات لازم است در برگه ها، نوشته ها و مناطق دیگر سایت خود کد وارد کنید. در اینجا هم کد کوتاه به کمک شما می آید.
اهمیت استفاده از shortcode در وبسایت وردپرس
شورت کدها از آنجایی اهمیت دارند که در وردپرس تنها با یک آیدی شناساییشده و تمام فعالیتهای قطعه کد طولانی php را تنها با ایجاد یک کد کوتاه انجام میدهد.
بهعنوانمثال برگهی ثبت سفارش داریم و یک فرم ثبت سفارش نیز با افزونه ساختهایم سپس شورت کدش را در برگه کپی میکنیم.
همزمان برگهی دیگری داریم که میخواهیم این فرم در آن برگه نیز استفاده شود پس همین شورت کد را در آن قسمت کپی میکنیم شورت کد در حد یک کلمه و یا دو سه کلمه بیشتر فضا را نمیگیرد و در متن ساده هرجایی که خوهستیم میتوانیم آن را استفاده کنیم.
کد های کوتاه یا همان شورت کد پیش فرض وردپرس
وردپرس به صورت پیش فرض دسته ای از شورت کدها را عرضه کرده است که شامل موارد زیر است:
- audio: فایل های صوتی را جاسازی کرده و امکان بازپخش را فراهم می کند.
- caption: به شما اجازه می دهد برای یک محتوا کپشن ایجاد کنید.
- gallery: یک گالری تصاویر قابل سفارشی سازی به سایت شما اضافه می کند.
- playlist: یک لیست پخش صوتی یا ویدیویی ایجاد می کند.
- video: یک فایل ویدیویی با قابلیت بازپخش جاسازی می کند.
- embed: این کد کوتاه به شما امکان می دهد اتریبیوت های مختلفی را در جاسازی های خود تنظیم کنید. مانند تنظیم حداکثر ابعاد و …
زمانی که می خواهید یک محتوای پویا (به محتوایی که به صورت مداوم در حال تغییر است محتوای پویا می گویند) یا کد دلخواه را در پست و صفحه های وردپرس اضافه کنید ، کد کوتاه می تواند واقعاً مفید باشد.
با این حال ، اگر می خواهید یک کد کوتاه سفارشی ایجاد کنید ، نیاز به تجربه کد نویسی دارید. اگر هم ندارید پیشنهاد می کنم که دوره طراحی قالب وردپرس حرفه ای حتما تهیه کنید .
یک پشنهاد ویژه دارم قبل از شروع به کد نویسی برای نمایش مطالب تصادفی وردپرس از دسته خاص اگه تازه شروع به طراحی قالب وردپرس کردید حتما از دوره طراحی قالب وردپرس دیدن فرمایید.
آموزش ساخت شورت کد در وردپرس
برای ایجاد یک شورتکد باید به محل قرار گرفتن قالب فعلی وبسایت خود مراجعه کنید. برای این کار وارد هاست سایت شده و در مسیر public_html به wp-content و سپس themes مراجعه کنید و پوشهی قالب فعلی را انتخاب کنید.
در پوشهی قالب باید به دنبال فایلی به نام functions.php باشید. در این فایل تمامی توابع وردپرس نوشته و اجرا میشوند. در انتهای این فایل کد زیر را نوشته سپس فایل را ذخیره کنید.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
function replyWp_shortcode() { global $post; $html = ""; $replyWP_query = new WP_Query(['post_type' => 'post', 'posts_per_page' => 3]); if ($replyWP_query->have_posts()) { while ($replyWP_query->have_posts()):$replyWP_query->the_post(); $html .= " <div class='text'><h2>" . get_the_title() . " </h2>"; $html .= "<p>" . get_the_excerpt() . "</p>"; $html .= "<figure>" . get_the_post_thumbnail(get_the_ID(),'sidebar-image') . "</figure>"; $html .= "<a href=\"" . get_permalink() . "\" class=\"button\">ادامه مطالب</a> </div>"; endwhile; wp_reset_postdata(); } return $html; } add_shortcode('replyWp', 'replyWp_shortcode'); |
در کد بالا به کمک تابع add_shortcode برای عبارت replyWp یک تابع تعریف کردیم. بنابراین هرجا که این شورتکد فراخوانی شود تابع replyWp_shortcode اجرا میشود.
همانطور که مشاهده میکنید این تابع آخرین مطالب را در خروجی چاپ میکند. برای آزمایش آن یک بلوک کدکوتاه در گوتنبرگ ایجاد کنید و کد زیر را در آن قرار دهید. سپس تغییرات را ذخیره و پیش نمایش برگه یا نوشته را مشاهده کنید.
1 |
[replyWp] |
در کد بالا یک آخرین مطالب وردپرس را بسیار ساده برای این شورتکد در نظر گرفتهایم. شما میتوانید در داخل بدنهی تابع replyWp_shortcodeکد مدنظر خود را بنویسید.
نحوه اجرا کد کوتاه یا شورت کد وردپرس در فایلهای قالب
به کمک روش بالا میتوانید کدهای کوتاه موردنیاز خود را بسازید و آنها را در برگه یا نوشته وارد کنید. برای اجرای این کدها در فایلهای قالب میتوانید از تابع زیر استفاده کنید:
1 |
<?php echo do_shortcode("[replyWp]"); ?> |
کافیست جای عبارت replyWp اسم شورتکدی که ایجاد کردهاید را بنویسید. این روش زمانی کاربرد دارد که بخواهیم یک شورتکد را به کمک کدهای php اجرا کنیم.
برای مثال میخواهیم در همهی نوشتهها قابلیت امتیازدهی ستارهای فعال شود. در این صورت شورتکدی که پلاگین به ما میدهد را در single.php جایگذاری میکنیم.
امیدواریم آموزش ساخت شورت کد وردپرس نمایش مطالب جدید وردپرس در قالب وردپرس بدون افزونه مورد توجه شما قرار گرفته باشد و برای شما کاربردی و مفید باشد.و مورد استفاده شما قرار بگیرد منتظر آموزش بعدی پاسخ وردپرس باشید.
عالی ممنون از وقتی که میزارید
یه سوال داشتم ، من توی سایتم دوره هم در کنار محصولات ارائه میدم و نیاز دارم توی پروفایل کاربر یه ردیف قرار بدم بنام دوره های خریداری شده من ( مثل تب سفارشات ) و داخلش صرفا دوره های یا محصولات خریداری شده با دسته بندی دوره ها به کاربر نشون بدم ، ممنون میشم بتونید راهنمایی کنید
سلام
استاد ابراهیمی من چطوری از شما تشکر بکنم؟
واقعاً از شما سپاسگزارم امیدوارم انسانهایی که واقعاً به مردم کمک میکنند و به فکر پیشرفت مردم هستند بدون هیچ ادعایی همیشه خداوند اونارو مورد لطف و عنایت خودش قرار بده. با اینکه بعضی از سایتها با گرفتن پولهای کلان از خیلی حتی زورشون مییاد جواب کامنتها رو بدن اما شما این کار رو انجام میدید واقعاً از شما سپاسگزارم.
سلام دورود بیگران خدمت شما دوست گرامی خواهش می کنم شما به من لطف دارید اینا من اینا وظیفه خودم می دونم به قول سعدی
بنی آدم اعضای یکدیگرند
که در آفرینش ز یک گوهرند
چو عضوی به درد آورد روزگار
دگر عضوها را نماند قرار
تو کز محنت دیگران بی غمی
نشاید که نامت نهند آدمی
بازم اگه سوال یا مشکل داشته باشید بنده در خدمتم
آرزو دارم که همیشه موفق و سر بلند باشید در زندگی
سلام استاد
برای گذاشتن قیمت در باکسهای پست تایپهای ایجاد شده چیکار باید بکنم
مثلاً شما محصولاتی که برای فروش قرار دادین و باکسهاش دارای قیمت هستش حالا من منظور خود ووکامرس نیست
من امد یک پست تایپ ایجاد کردم و بعد امد با شوردت کد همون رو در قسمتهای دیگه سایت یا قالب به نمایش گذاشتم ولی این دوره هیچ ربطی به ووکامرس نداره یک پست هستش ولی میخوام قیمتی تعیین بکنم و در این پستها نمایش بده که اینها از محصولات ووکامرس نیستن. دورههایی که اختصاصی هستن. ولی فروش این محصولات با ووکامرس انجام میشه
من لینک عکس رو براتون گذاشتم.
توی این عکس قیمت در باکسها نمایش داده شده که یک پست هستش و از محصولات ووکامرس نیست ولی قیمتش از ووکامرس میگیره
سلام خدمت شما دوست گرامی من درست متوجه نشدم بازم اگه منظور شما این که داخل او پست تایپ که خود شما ساختید قیمت بزارید میتوانید از متاباکس ها استفاده نمایید یک متاباکس برای او پست تایپ تعریف کنید و داخل اون قیمت را تعین کنید
اگه بنده درست متوجه شده باشم موفق باشید
سلام استاد
اگه عکسی رو که فرستادم دیده باشید منظورم اون باکسها بودن یعنی لیستشون. مثل همون عکس الان من درست کردم که عکس خودم رو براتون هم میذارم مال من قیمت توش قرار نمیگیره یعنی روش گذاشتن این کار رو بلد نیستم
اگه نگاه بکنید اون عکسهای قبلی زیر عنوانشون قیمت درج شده بود
اما اینا نیستن. که من با خط قرمز مشخص کردم
سلام خدمت شما دوست گرامی بله تصویر که ارسال کرده بودید را دیدم به احتمال زیاد قیمت ار از ووکامرس گرفته بود یا خود طراح یک متاباکس تعریف کرده که داره قیمت را نمایش میده
اگه منظور شما این که قیمت را از طریق ووکامرس نمایش بدید داخل یک پست تایپ دیگه فکر نکنم این کار شدنی باشه در غیر این صورت یک متاباکس داخل پست تایپ مورد نظر تعریف کنید و قیمت داخل اون متاباکس قرار بدید در صفحه که می خواهید نمایش بدید قرار بدید تمام
بنده از حرف های شما فقط همین اندازه برداشت کردم اگه منظور شما یک چیز دیگه است لطفا بیشتر توضیح بدید تا بتوانم راه نمایی کنم
موفق و سر بلند باشید
سلام استاد
ممنون بابت تولید این آموزش انشاالله که همیشه سلامت باشید.
سلام خدمت شما دوست گرامی خواهش می کنم خوشحالم که برای شما مفید بوده موفق و سربلند باشید