taraneh

ایجاد جستجو بر اساس چند آیتم خاص

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

سلام
وقتتون بخیر اساتید گرامی

من یه کادر جستجو لازم دارم که به صورت زیر باشه(تصویر)

کاربر بتونه از داخل گزینه های موجود در کمبوباکس ها یکی رو انتخاب کنه و در نهایت با زدن دکمه جستجو، نتایج بر اساس انتخاب های کاربر نمایش داده بشه

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

اگر وجود داره ممنون میشم معرفی کنید بهم

و اگر نه :

من با کمک اچ تی ام ال یه فرم ساختم و این باکس های کشویی رو داخل اون قرار دادم فقط الان نمیدونم چطور باید به ورد پرس بفهمونم که مقصد متغیرهای فرم کجاست و باید به کجا ارسال بشه

میتونید بهم کمک کنید؟

search.jpg

0

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


لینک به پست

فورم html کشن فرورم رو به صفحه جاری میفرسته مگه اینکه شما با استفاده از خاصیت action اونو تغییر بدین به صفحه دیگه

https://www.w3schools.com/tags/att_form_action.asp

2

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


لینک به پست

سلام

ممنون

میدونم که باید اکشن رو تغییر بدم

توی سوالم هم پرسیدم

اکشن رو دقیقا باید به کجا لینک بدم ؟

اون صفحه ای که عملیات سرچ رو در وردپرس انجام میده چیه ؟ و ورد پرس جستجو رو به چه صورتی در پایگاه داده ش انجام میده ؟

اینو اگه میشه بهم بگین

ممنون

0

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


لینک به پست

اینکه شما ایجاد کردین ظاهر کار و بخش اول کار هست
1 بخش دوم هم داره که کدهای php و پردازش پارامترها و نمایش خروجی بر طبق اون پارامترها هست
شما نیاز نیست action رو به جایی آدرس بدین فقط کدهای php مورد نیاز رو هم باید تو همین صفحه قرار بدین
برای هر کدوم از اون فرمهایی که طراحی کردین بسته name و method که تعریف کردین به صورت GET_$  یا POST_$ ارسال میشن به همین صفحه

2

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


لینک به پست

سلام

ممنون

اینها کدهای اچ تی ام الی هستند که ایجاد کردم

<!DOCTYPE HTML>

<html>

<head>
    <title>Untitled</title>
    <style type="text/css">
#Box
{
        width:50%;
        margin: 0 auto;
        margin-top:75px;
        height:20px;
        border:0px solid black;
}
.Box1, .Box2, .Box3 {
        float:left;
        width:auto;
        height:40px;
        background-color: white;
        border: 0px solid #bdbdbd;
        -webkit-border-radius: 5px;
        border-radius: 10px;
        -moz-box-shadow: 0 0 10px #bdbdbd;
        -webkit-box-shadow: 0 0 10px #bdbdbd;
        box-shadow: 0 0 5px #bdbdbd;
        padding: 1px;
        margin: 2px;
}
.selectbox{

        height:40px!important;
        border: 0px solid #bdbdbd;
        width:120px!important;
        border-radius: 10px;
        white-space: nowrap!important;
}

    </style>

</head>

<body dir="rtl">
<div id="Box" >
        <form method="get" action="">
            <button type="submit" class="Box3">Search</button>

            <div class="Box3">
                        <select class="selectbox">
                        <option value="0">محدوده قیمت</option>
                        <option value="vcheap">زیر 50هزار</option>
                        <option value="cheap">50هزار-تا100هزار</option>
                        <option value="vnormal">100هزار-300هزار</option>
                        <option value="normal">300هزار-500هزار</option>
                        <option value="expensive">500هزار-800هزار</option>
                        <option value="vexpensive">بالای 800هزار</option>
                        </select>
            </div>

            <div class="Box2">
                        <select class="selectbox">
                        <option value="0">مناسبت</option>
                        <option value="valentine">ولنتاین</option>
                        <option value="mother-day">روز مادر</option>
                        <option value="father-day">روز پدر</option>
                        <option value="yalda">شب یلدا </option>
                        </select>
            </div>

            <div class="Box1">
                        <select class="selectbox">
                        <option value="0">جنسیت</option>
                        <option value="woman">خانم</option>
                        <option value="man">آقا</option>
                        </select>
            </div>

        </form>
</div>



</body>

</html>

متاسفانه از توابع وردپرس اطلاعی ندارم و نمیدونم چه تابعی در جستجو دخیل هست و به چه صورتی
میتونید برای تنظیم کدهای پی اچ پی کمک کنید؟

1

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


لینک به پست

عالی بود

0

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


لینک به پست

شما باید کلاس wp_query استفاده کنین
 

$args = array(
    'post_type' => 'accommodation',
    'meta_query'    => array(
        array( 'key' => '_price', 'value' => $_GET['price'] ),
        array( 'key' => '_gender', 'value' => $_GET['gender'] ),
        array( 'key' => '_motive', 'value' => $_GET['motive'] ),
        'relation' => 'AND'
    )
);
$the_query = new WP_Query( $args );

// The Loop
if ( $the_query->have_posts() ) {

    while ( $the_query->have_posts() ) : $the_query->the_post(); 
        // Your code here
    endwhile;

} else {
        // no posts found
}
/* Restore original Post Data */
wp_reset_postdata();

المانهای html هم باید name داشته باشن تا شناسایی بشن مد شما به صئرا زیر میشه

 

        <form method="get" action="">
            <button type="submit" class="Box3">Search</button>

            <div class="Box3">
                        <select class="selectbox" name="price">
                        <option value="0">محدوده قیمت</option>
                        <option value="vcheap">زیر 50هزار</option>
                        <option value="cheap">50هزار-تا100هزار</option>
                        <option value="vnormal">100هزار-300هزار</option>
                        <option value="normal">300هزار-500هزار</option>
                        <option value="expensive">500هزار-800هزار</option>
                        <option value="vexpensive">بالای 800هزار</option>
                        </select>
            </div>

            <div class="Box2">
                        <select class="selectbox" name="motive">
                        <option value="0">مناسبت</option>
                        <option value="valentine">ولنتاین</option>
                        <option value="mother-day">روز مادر</option>
                        <option value="father-day">روز پدر</option>
                        <option value="yalda">شب یلدا </option>
                        </select>
            </div>

            <div class="Box1">
                        <select class="selectbox" name="gender">
                        <option value="0">جنسیت</option>
                        <option value="woman">خانم</option>
                        <option value="man">آقا</option>
                        </select>
            </div>

        </form>

شما بهتره از پلاگینهای advanced search استفاده کنین

0

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


لینک به پست

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

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

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

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


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

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

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


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