دهکده وردپرس / قالب وردپرس اوریجینال پلاگین وردپرس طراحی سایت سئو

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

نحوه ایجاد جستجو پیشرفته در وردپرس با استفاده از کد

خانه » آموزش وردپرس » نحوه ایجاد جستجو پیشرفته در وردپرس با استفاده از کد

نحوه ایجاد جستجو پیشرفته در وردپرس با استفاده از کد

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

نحوه ایجاد جستجو پیشرفته در وردپرس با استفاده از کد

نحوه ایجاد جستجو پیشرفته در وردپرس با استفاده از کد

برای انجام جستجوی پیشرفته در وردپرس با استفاده از کد، ابتدا قطعه کد زیر را در فایل Functions.php قالب وردپرس خود قرار دهید.

//--- custom Search Form -------------------------------------
function custom_search_form($custom_search){
 
$default=array(
                'cat_show'=>false,
				'tag_show'=>false,
				'author_show'=>false,
				'archive_show'=>false,
				'field_show'=>true,
				'label_show'=>false,
				'button_show'=>true,
				'rememberd'=>true,
				'echo'=>false
);//default array
foreach((array)$custom_search as $key=>$value){
	$default[$key]=$value;
}

گام دوم: اضافه کردم متغیرها

دومرتبه قطعه کد زیر را در فایل functions.php پوسته وردپرس خود اضافه کنید.

//--base vars------------------------
global $WP_Query,$query,$wp_user;
$cat_option='';$tag_option='';$author_option='';$archive_option='';
$advance_option='';$close_option='';$field_option='';$button_option='';
$cat_selected=get_query_var('cat');
$tag_selected=get_query_var('tag');
$author_selected=get_query_var('author');
$day_selected=get_query_var('day');
$month_selected=get_query_var('monthnum');
$year_selected=get_query_var('year');
if($day_selected==0)$day_selected='';
if($month_selected==0)$month_selected='';
if($year_selected==0)$year_selected='';

گام سوم: معرفی فیلترها
در این بخش نیز تمامی کد ها در فایل functions.php قالب وردپرس شما قرار می گیرد.
جایگذاری اولین فیلتر: دسته بندی

//--------category--------------------	
if($default['cat_show']==1):
$categories = get_categories(); 
$cat_option='<li><ul>';
if($default['label_show']):
$cat_option .='<li class="cat-label">'.__('دسته بندی','zistfa').'</li>';
endif;	
$cat_option .='<li class="search-cat"><select name="cat" id="searchcat" >
<option value="">'.__('همه','zistfa').'</option>';
foreach ($categories as $category) {
$cat_option .= '<option value="'.$category->cat_ID.'"';
if(($cat_selected == $category->cat_ID)&&($default['rememberd']==1)):
$cat_option .=' selected';
endif;
$cat_option .= '>'.$category->cat_name;
$cat_option .= '</option>';
}
$cat_option .= '</select></li></ul></li>';
endif;

فیلتر دوم: برچسب

//--------tag--------------------
if($default['tag_show']==1):
$tags = get_categories('taxonomy=post_tag'); 
$tag_option='<li><ul>';
if($default['label_show']):
$tag_option .='<li class="tag-label">'.__('برچسب','zistfa').'</li>';
endif;
$tag_option .='<li class="search-tag" ><select name="tag" id="searchtag" >
<option value="">'.__('همه','zistfa').'</option>';
 foreach ($tags as $tag) {
$tag_option .= '<option value="'.$tag->slug.'"';
if(($tag_selected == $tag->slug)&&($default['rememberd']==1)):
$tag_option .=' selected';
endif;
$tag_option .= '>'.$tag->cat_name;
$tag_option .= '</option>';
}
$tag_option .= '</select></li></ul></li>';
	endif;

فیلتر سوم:نویسنده

//--------author--------------------		
if($default['author_show']==1):
$authors=get_users(array('who'=>'authors','fields'=>array('id','display_name')));
$author_option='<li><ul>';
if($default['label_show']):
$author_option .='<li class="author-label">'.__('نویسنده ','zistfa').'</li>';
endif;
$author_option .='<li class="search-author" >
<select name="tag" id="searchauthor" ><option value="">'.__('همه','zistfa').'</option>';
 foreach ($authors as $author) {
$author_option .= '<option value="'.$author->id.'"';
if(($author_selected == $author->id)&&($default['rememberd']==1)):
$author_option .=' selected';
endif;
$author_option .= '>'.$author->display_name;
$author_option .= '</option>';
}
$author_option .= '</select></li></ul></li>';
endif;

فیلتر چهارم: تاریخ

//--------Date--------------------		
if($default['archive_show']==1):
$archive_option='<li><ul>';
if($default['label_show']):
$archive_option .='<li class="archive-label">'.__('تاریخ','zistfa').'</li>';
endif;
$archive_option .='<li class="archive-field">
<input type="text" value="' . $year_selected . '"
 name="year" id="year" size="3" placeholder="'.__('سال','zistfa').'" />
<input type="text" value="' . $month_selected . '" 
name="monthnum" id="monthnum" size="2" placeholder="'.__('ماه','zistfa').'" />
<input type="text" value="' . $day_selected. '"
 name="day" id="day" size="1" placeholder="'.__('روز','zistfa').'" />
</li></ul></li>';
endif;

ساخت فیلد جستجو

//--------search field--------------------		
if($default['field_show']==1):
$field_option='<li><ul>';
if($default['label_show']):
$field_option .='<li class="search-label">'.__('جستجو برای : ','zistfa').'</li>';
endif;
$field_option .='<li class="search-field">
<input type="text" value="' . get_search_query() . '"
 name="s"  placeholder="'.__('کلمه مورد نظر + اینتر','zistfa').'" />
</li>
</ul>
</li>';
endif;

ساخت دکمه جستجو

//--------search button--------------------		
if($default['button_show']==1):
$button_option='<li>
<input type="submit" class="search-submit" value="'. esc_attr__( 'جستجو','zistfa' ) .'" />
</li>';
endif;

گام چهارم : ثبت جستجوگر جدیدمان در وردپرس

$form = '<form role="search" method="get" class="searchform" action="' . home_url( '/' ) . '" ><ul>
			'.$cat_option.$tag_option.$author_option.$archive_option.$field_option.$button_option.'
			</ul></form>';
<div style="clear:both; margin-top:0em; margin-bottom:1em;"><a href="https://mechanicwp.ir/the-most-important-tips-to-improve-wordpress-security/" target="_blank" class="u3cec12f7cdecfd15783c15891479a8d0"><!-- INLINE RELATED POSTS 3/3 //--><style> .u3cec12f7cdecfd15783c15891479a8d0 { padding:0px; margin: 0; padding-top:1em!important; padding-bottom:1em!important; width:100%; display: block; font-weight:bold; background-color:#ECF0F1; border:0!important; border-left:4px solid #95A5A6!important; text-decoration:none; } .u3cec12f7cdecfd15783c15891479a8d0:active, .u3cec12f7cdecfd15783c15891479a8d0:hover { opacity: 1; transition: opacity 250ms; webkit-transition: opacity 250ms; text-decoration:none; } .u3cec12f7cdecfd15783c15891479a8d0 { transition: background-color 250ms; webkit-transition: background-color 250ms; opacity: 1; transition: opacity 250ms; webkit-transition: opacity 250ms; } .u3cec12f7cdecfd15783c15891479a8d0 .ctaText { font-weight:bold; color:#2C3E50; text-decoration:none; font-size: 16px; } .u3cec12f7cdecfd15783c15891479a8d0 .postTitle { color:#E74C3C; text-decoration: underline!important; font-size: 16px; } .u3cec12f7cdecfd15783c15891479a8d0:hover .postTitle { text-decoration: underline!important; } </style><div style="padding-left:1em; padding-right:1em;"><span class="ctaText">بیشتر بخوانید :</span>  <span class="postTitle">مهمترین نکات برای بالا بردن امنیت وردپرس</span></div></a></div> 
		if($default['echo']==1):
			echo $form;
		else:
			return $form;
		endif;
 
}
add_filter( 'get_search_form', 'custom_search_form',10,1 );

تا اینجای کار، تمامی کدها در فایل functions.php قالب وردپرس شما قرار گرفت.

گام پنجم : نمایش فرم جستجوگر

اکنون میتوانید فرم خود را با قرار دادن قطعه کد زیر در هر محلی از سایت خود که تمایل دارید، ایجاد کنید.

<!--custom-search-form-->	
<div class="search-form">
<?php custom_search_form(array(
					            'echo'=>1,
								'archive_show'=>1,
								'cat_show'=>1,
								'tag_show'=>1,
								'author_show'=>1,
								'label_show'=>1,
								));?>
</div><!--/custom-search-form-->

گام آخر: استایل دهی به فرم مورد نظر

در این مرحله برای نمایش مناسب و زیبای فرم ایجاد شده می توانید از قطعه کد زیر در فایل CSS قالب وردپرس خود استفاده کنید.
البته ناگفته نماند میتوانید Style مورد علاقه خود را به فرم ایجاد شده بدهید.

.cat-label, .tag-label, .author-label, .archive-label, .search-label
 {font-size : normal;padding : 3px;text-align : center;}
.author-label,.search-author select{color:rgb(53, 122, 232);border-color:rgb(53, 122, 232)}
.tag-label,.search-tag select{color:rgb(142, 68, 173);border-color:rgb(142, 68, 173)}
.cat-label,.search-cat select{color:rgb(216, 66, 55);border-color:rgb(216, 66, 55)}
.archive-label,.archive-field input{color:rgb(0, 167, 83);border-color:rgb(0, 167, 83)}
form.searchform ul li {display: inline-block;}
form.searchform ul li ul li{display: list-item;}
.search-form select,.search-form input {
border: solid 1px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
border-radius: 3px;
margin:3px;text-align:center
}

ایجاد جستجو پیشرفته در وردپرس با استفاده از کد به پایان رسید. در صورت وجود هرگونه مشکل با ما در میان بگذارید. بدرود.

 

 

ناشر محصول

فاطمه ساجدی

فاطمه ساجدی

فاطمه ساجدی هستم. کارشناسی ارشد ای تی. کار تولید محتوا و طراحی سایت رو انجام میدم.

مطالب جدید

جلوگیری از ارسال نظرات اسپم در وردپرس

مدیریت سفارشات مشتریان در ووکامرس

مدیریت سفارشات مشتریان در ووکامرس

انتقال مستقیم به صفحه تسویه حساب در ووکامرس

انتقال مستقیم به صفحه تسویه حساب در ووکامرس

کاهش رتبه الکسا در وردپرس

کاهش رتبه الکسا در وردپرس

ساخت جدول قیمت گذاری در وردپرس

ساخت جدول قیمت گذاری در وردپرس

افزونه meta slider

افزونه meta slider

هنوز نظری ثبت نشده! شما نظری ندارید؟!