رفتن به مطلب

ساخت قالب جستجو


پست های پیشنهاد شده

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


<div id="et-search">
<div id="et-search-inner" class="clearfix">
<p id="et-search-title"><span>جست و جوی پیشرفته</span></p>
<form action="<?php bloginfo('url'); ?>" method="get" id="et_search_form">
<div id="et-search-left">
<p id="et-search-word"><input type="text" id="et-searchinput" name="s" value="" /></p>

<p id="et_choose_posts"><label><input type="checkbox" id="et-inc-posts" name="et-inc-posts"> در نوشته ها</label></p>
<p id="et_choose_pages"><label><input type="checkbox" id="et-inc-pages" name="et-inc-pages"> در برگه ها</label></p>
<p id="et_choose_date">
<select id="et-month-choice" name="et-month-choice">
<option value="no-choice">انتخاب ماه</option>
<?php
global $wpdb, $wp_locale;

$selected = '';
$query = "SELECT YEAR(post_date) AS `year`, MONTH(post_date) AS `month`, count(ID) as posts FROM $wpdb->posts GROUP BY YEAR(post_date), MONTH(post_date) ORDER BY post_date DESC";

$arcresults = $wpdb->get_results($query);

foreach ( (array) $arcresults as $arcresult ) {
if ( isset($_POST['et-month-choice']) && ( $_POST['et-month-choice'] == ($arcresult->year . $arcresult->month) ) ) {
$selected = ' selected="selected"';
}
echo "<option value='{$arcresult->year}{$arcresult->month}'{$selected}>{$wp_locale->get_month($arcresult->month)}" . ", {$arcresult->year}</option>";
if ( $selected <> '' ) $selected = '';
}
?>
</select>
</p>

<select name="jarchive-dropdown" > <option value="">شمسی ماه</option>
<?php wp_get_jarchives("type=monthly&format=option");?></select>
<select name="jarchive-dropdown" > <option value="">شمسی سال</option>
<?php wp_get_jarchives("type=yearly&format=option");?></select>
<p id="et_choose_cat"><?php wp_dropdown_categories('show_option_all=انتخاب دسته&show_count=1&hierarchical=1&id=et-cat&name=et-cat'); ?></p>
</div> <!-- #et-search-left -->
<div id="et-search-right">
<input type="hidden" name="et_searchform_submit" value="et_search_proccess" />
<input class="et_search_submit" type="submit" value="بگرد" id="et_search_submit" />
</div> <!-- #et-search-right -->
</form>
</div> <!-- end #et-search-inner -->
</div>

کدی که برای ماه و سال شمسی قرار دادم :



<select name="jarchive-dropdown" > <option value="">شمسی ماه</option>
<?php wp_get_jarchives("type=monthly&format=option");?></select>
<select name="jarchive-dropdown" > <option value="">شمسی سال</option>
<?php wp_get_jarchives("type=yearly&format=option");?></select>

لینک به ارسال

سلام

توی دیتابیس هم ماه ها بصورت میلادی ذخیره میشه.

شما فقط کافیه موقع نمایش اون رو برگردان به شمسی کنید. با تابع jdate

لینک به ارسال

مرتضی جان یه راهنمایی کم ، من الان کدوم تابع رو توی jdate قرار بدم که فارسی بهم بده ؟

لینک به ارسال

شما میخوای نتایج به فارسی باشه یا فیلد جستجو تاریخ ها فارسی باشه؟

فکر کنم فیلد منظورتون هست درسته؟

لینک به ارسال

فیلد های جستجو فارسی باشه ، یه ستون دراپ دون برای ماه ، یکی برای سال یکی هم برای روز ، که شمسی باشن ، دیروز هم با تابع jdate ور رفتم ، ولی چیزی نتونستم انجام بدم :D

لینک به ارسال

خوب پس این متد رو میشه انجام داد.

اول همون لیست های شمسی توی فرم قرار بدید.

بعد باید سال و ماه و روز رو به میلادی برگردان کنید. با کمک تابع jalali_to_gregorian که وردپرس عددی میگیره.

http://jdf.scr.ir/rahnama/?t=jalali_to_gregorian

بعد اینها رو با کمک فرم به صفحه بعد ببرید و در کوئری زیر قرار بدید:

$date_query = new WP_Query( 'year=' . $_GET['year'] . '&monthnum=' . $_GET['month'] . '&day=' . $_GET['day'] );

لینک به ارسال

مرتضی خیلی پیچیده گفتی ، الان چند روزی باید بشینم تا بفهم چی نوشتی :دی

لینک به ارسال

http://www.developer1.ir/PHP/Form.aspx

این رو پیدا کردم ، برم روش کار کنم ، مرسی ، حالا اگه باز مشکلی پیش اومد می یام :)

لینک به ارسال
  • 2 ماه بعد...

سلام . من با فرم زیر ، برای جستجو انتخاب دسته بندی ها رو گزاشتم ، ولی یه سوال ، با چه روشی اینا رو برای کوری آماده کنم ؟ منظورم اینه که مثلا کاربر چند دسته بندی رو انتخاب که می کنه ، بدون مشکل وارد کوری بشوند و سرچ رو انجام بده ؟


<form>

<select size="12" name="”select_mulitple[]“" multiple="”multiple”" style="height: 402px;width: 118px;font-family: SNAA;font-size: 15px;">
<option value="”cat1″">صفحه اصلی</option>
<option value="”cat2″">- پیشنهاد سردبیر</option>
<option value="”cat3″">- اخبار ویژه</option>
<option value="”cat4″">- یادداشت</option>
<option value="”cat5″">- گفتگو</option>
<option value="”cat6″">بوشهر</option>
<option value="”cat7″">- اخبار برگزیده</option>
<option value="”cat8″">- آخرین اخبار</option>
<option value="”cat9″">- اخبار ویژه</option>
<option value="”cat10″">- یاداشت</option>
<option value="”cat10″">- گفتگو</option>
<option value="”cat12″">فارس</option>
<option value="”cat13″">- اخبار برگزیده</option>
<option value="”cat14″">- آخرین اخبار</option>
<option value="”cat15″">- اخبار ویژه</option>
<option value="”cat16″">- یاداشت</option>
<option value="”cat17″">- گفتگو</option>
</select>

</form>

لینک به ارسال

خوب همه انتخاب ها رو بصورت آرایه میتونید در کوئری ست کنید. در حالت معمول هم همین امکان هست.

لینک به ارسال

شما از wpdb استفاده کردید

استفاده از این روش نیازمند دانش sql هست

پیشنهادم اینه با wp_query کار کنید.

لینک به ارسال
  • 6 ماه بعد...

wp_query آموزش فارسی لینک میدین

تشکر

جستجو کنید

احتمالا نیست

http://codex.wordpress.org/Class_Reference/WP_Query

لینک به ارسال

به گفتگو بپیوندید

هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .

مهمان
ارسال پاسخ به این موضوع ...

×   شما در حال چسباندن محتوایی با قالب بندی هستید.   حذف قالب بندی

  تنها استفاده از 75 اموجی مجاز می باشد.

×   لینک شما به صورت اتوماتیک جای گذاری شد.   نمایش به صورت لینک

×   محتوای قبلی شما بازگردانی شد.   پاک کردن محتوای ویرایشگر

×   شما مستقیما نمی توانید تصویر خود را قرار دهید. یا آن را اینجا بارگذاری کنید یا از یک URL قرار دهید.

×
×
  • اضافه کردن...