رفتن به مطلب

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


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

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

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

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

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

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

و اگر نه :

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

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

search.jpg

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

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

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

لینک به ارسال

سلام

ممنون

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

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

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

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

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

ممنون

لینک به ارسال

اینکه شما ایجاد کردین ظاهر کار و بخش اول کار هست
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>

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

لینک به ارسال

شما باید کلاس 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 استفاده کنین

لینک به ارسال

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

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

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

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

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

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

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

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

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