• اطلاعیه ها

    • Morteza

      باهم بسازیم: اطلس ووکامرس و وردپرس   14/07/96

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

ابزارک جستجوی پیشرفته !

7 پست در این موضوع قرار دارد

درود.

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

دوستان کدی رو قرار دادند که موضوعات رو میاره ، چیزی که مد نظر من هست ، علاوه بر موضوعات ، تاریخ هم هست ! فروردین 90 ، اردیبهشت 90....

البته گفتیه که با جستجو هایی که داشتم ، این رو پیدا کردم :


<?php
/*
Template Name: Search Pro
*/
?>
<?php the_post(); ?>
<?php get_header(); ?>

<div id="content-area" class="clearfix<?php if($fullwidth) echo(' fullwidth');?>">

<div class="post clearfix">

<?php if($thumb <> '' && get_option('iutab-shahrak_thumbnails') == 'on') { ?>

<?php }; ?>
<?php the_content(); ?>
<?php wp_link_pages(array('before' => '<p><strong>برگه ها:</strong> ', 'after' => '</p>', 'next_or_number' => 'number')); ?>

<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>

<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> <!-- end #et-search -->

<div class="clear"></div>

<?php edit_post_link(__('Edit this page','iutab-shahrak')); ?>
<div class="clear"></div>
</div> <!-- end .post -->

</div> <!-- end #content-area -->

<?php if (!$fullwidth) get_sidebar(); ?>
<?php get_footer(); ?>

اما : کلا مشکل داره و نمایش های پست هاش عمومیه فکر کنم ! :دی

تاریخش هم میلادیه ...

0

به اشتراک گذاری این پست


لینک به پست

شاید این افزونه هم بدردتون بخوره(تست نکردم فقط از مشهوریتش خوشم اومده!)

Relevanssi - A Better Search

4

به اشتراک گذاری این پست


لینک به پست

در مورد کد اول:

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

3

به اشتراک گذاری این پست


لینک به پست

مرتضی جان متاسفانه کمی گنگ بود !

0

به اشتراک گذاری این پست


لینک به پست

شبیه همین کد شماست.

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

1

به اشتراک گذاری این پست


لینک به پست

این کد کلا قدیمی هست و فکر کنم از کار هم افتاده، چون تست که کردم ، مطالب رو کامل نشون میده تقریبا !

کد دیگه ای نیست؟

0

به اشتراک گذاری این پست


لینک به پست

یک فرم ایجاد کنید و تاریخ رو توی اون قرار بدید و با کمک کوئری مثل لاین پست ها رو نمایش بدید:

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

روز و ماه و سال.

یک متد بهتر، کد زیر در فایل فانکشن:

function my_date_search() {

if(is_search()) {

$search_query = get_search_query();

$months = array( 1 => "January", 2 => "February", 3 => "March", 4 => "April", 5 => "May", 6 => "June", 7 => "July", 8 => "August", 9 => "September", 10 => "October", 11 => "November", 12 => "December" );

foreach($months as $month => $month_name) {

if(stristr($search_query, $month_name)) {

$m = $month;

preg_match('/(19[0-9][0-9]|20[0-9][0-9])/', $search_query, $year);

if($year)

$y = $year[0];

preg_match('/^[0-3]{0,1}[0-9]{1} /', $search_query, $day);

if($day)

$d = $day[0];

}

}

if(isset($d) && isset($m) && isset($y)) {

$wd = explode($y, $search_query);

if($wd[1])

$query_string = 's=' . trim($wd[1]) . '&year=' . $y . '&monthnum=' . $m . '&day=' . $d;

else

$query_string = 'year=' . $y . '&monthnum=' . $m . '&day=' . $d;

query_posts($query_string);

}

}

}

add_action('get_header', 'my_date_search');

ورودی هم به صورت: 15 april 2012

و در نهایت افزونه غیر رایگان:

http://codecanyon.net/item/wordpress-plugin-post-by-date-range/2350915

1

به اشتراک گذاری این پست


لینک به پست

برای ارسال نظر یک حساب کاربری ایجاد کنید یا وارد حساب خود شوید

برای اینکه بتوانید نظر ارسال کنید نیاز دارید که کاربر سایت شوید

ایجاد یک حساب کاربری

برای حساب کاربری جدید در انجمن ما ثبت نام کنید. عضویت خیلی ساده است !


ثبت نام یک حساب کاربری جدید

ورود به حساب کاربری

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


ورود به حساب کاربری