تابع get_search_form در وردپرس
در وردپرس، جستجو یکی از مهمترین بخشها برای بهبود تجربه کاربری و یافتن محتوای مورد نظر است. تابع get_search_form() به توسعهدهندگان این امکان را میدهد که فرم جستجو را به راحتی در قالب خود اضافه کنند و کنترل بیشتری بر ظاهر و عملکرد آن داشته باشند.
معرفی تابع get_search_form()
تابع get_search_form() یک تابع پیشساخته در وردپرس است که فرم جستجو را برمیگرداند یا نمایش میدهد. این تابع میتواند بدون هیچ پارامتری فراخوانی شود و خروجی آن شامل HTML فرم جستجو است.
<?php get_search_form(); ?>در این مثال ساده، تابع فرم جستجوی پیشفرض وردپرس را نمایش میدهد. این فرم معمولاً شامل یک <input> برای وارد کردن متن و یک دکمه ارسال است.
پارامترهای تابع get_search_form()
تابع get_search_form() دارای یک آرایه پارامتر اختیاری به نام $args است که میتوان برای سفارشیسازی فرم استفاده کرد. این آرایه میتواند شامل مقادیر زیر باشد:
- ‘echo’: مشخص میکند که فرم به صورت مستقیم نمایش داده شود یا به عنوان خروجی برگردانده شود. مقدار پیشفرض
trueاست. - ‘form’: در صورتی که بخواهید فرم پیشفرض را با فرم سفارشی جایگزین کنید، میتوانید HTML دلخواه خود را در این پارامتر قرار دهید.
<?php
$args = array(
'echo' => false
);
$form = get_search_form($args);
echo $form;
?>در مثال بالا، فرم جستجو به جای نمایش مستقیم، در متغیری به نام $form ذخیره شده و سپس با echo نمایش داده میشود. این روش به توسعهدهنده امکان میدهد تا قبل از نمایش فرم، تغییرات لازم را اعمال کند.
سفارشیسازی فرم جستجو
وردپرس این امکان را میدهد که فرم جستجو را با ایجاد فایل searchform.php در قالب خود تغییر دهید. اگر این فایل موجود باشد، تابع get_search_form() آن را بارگذاری میکند. این ویژگی به توسعهدهندگان اجازه میدهد فرم جستجو را به دلخواه طراحی کنند.
<form role="search" method="get" class="search-form" action="<?php echo home_url('/'); ?>">
<label>
<span class="screen-reader-text">Search for:</span>
<input type="search" class="search-field" placeholder="Search …" value="<?php echo get_search_query(); ?>" name="s" />
</label>
<button type="submit" class="search-submit">Search</button>
</form>در این فرم سفارشی:
role="search"برای دسترسیپذیری تعریف شده است.method="get"باعث میشود پارامتر جستجو در URL ارسال شود.action="<?php echo home_url('/'); ?>"URL سایت را به عنوان مقصد جستجو مشخص میکند.get_search_query()متن جستجوی کاربر را بعد از ارسال فرم حفظ میکند.
مزایای استفاده از get_search_form()
| ویژگی | توضیح |
|---|---|
| سادگی | با یک خط کد میتوانید فرم جستجو را در هر بخش قالب خود نمایش دهید. |
| قابلیت سفارشیسازی | امکان جایگزینی فرم پیشفرض با فرم دلخواه از طریق searchform.php. |
| سازگاری با افزونهها | چون تابع وردپرس است، با اکثر افزونهها و پوستهها بدون مشکل کار میکند. |
| بهینهسازی SEO | فرم استاندارد وردپرس به موتورهای جستجو کمک میکند تا محتوای سایت بهتر ایندکس شود. |
بهترین شیوهها در استفاده از فرم جستجو
- همیشه از
get_search_form()به جای نوشتن HTML فرم به صورت دستی استفاده کنید تا سازگاری حفظ شود. - برای دسترسیپذیری، از
<label>وrole="search"استفاده کنید. - در صورت نیاز به تغییر ظاهر، فایل
searchform.phpرا در قالب خود ایجاد کنید. - برای جلوگیری از مشکلات نمایش در دستگاههای مختلف، از کلاسهای CSS استاندارد و واکنشگرا استفاده کنید.
نمونه پیشرفته با سفارشیسازی و CSS
<form role="search" method="get" class="custom-search-form" action="<?php echo home_url('/'); ?>">
<input type="search" class="custom-search-input" placeholder="Type your query..." value="<?php echo get_search_query(); ?>" name="s" />
<button type="submit" class="custom-search-button">Go</button>
</form>در این نمونه، کلاسهای CSS سفارشی اضافه شدهاند تا ظاهر فرم با طراحی سایت هماهنگ شود و کاربر تجربه بهتری داشته باشد.
نتیجهگیری
تابع get_search_form() ابزار قدرتمندی در وردپرس است که به توسعهدهندگان اجازه میدهد فرم جستجو را با کمترین تلاش و بیشترین انعطافپذیری به قالب خود اضافه کنند. با استفاده از این تابع و رعایت بهترین شیوهها، میتوانید فرم جستجوی استاندارد، سفارشی و بهینه برای SEO ایجاد کنید که تجربه کاربری سایت شما را بهبود دهد.
آیا این مطلب برای شما مفید بود ؟




