رفتن به مطلب

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

سلام دوستان یه سوال داشتم .

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

function sub_title_add_meta_box() {
    add_meta_box(
        'sub_title-sub-title',
        __( 'Sub-Title', 'sub_title' ),
        'sub_title_html',
        'product',
        'normal',
        'default'
    );
}
add_action( 'add_meta_boxes', 'sub_title_add_meta_box' );

function sub_title_html( $post) {
    wp_nonce_field( '_sub_title_nonce', 'sub_title_nonce' ); ?>

    <p>Sub title For Product</p>

    <p>
        <label for="sub_title_subtitle"><?php _e( 'subtitle', 'sub_title' ); ?></label><br>
        <input type="text" name="sub_title_subtitle" id="sub_title_subtitle" value="<?php echo sub_title_get_meta( 'sub_title_subtitle' ); ?>">
    </p><?php
}

function sub_title_save( $post_id ) {
    if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
    if ( ! isset( $_POST['sub_title_nonce'] ) || ! wp_verify_nonce( $_POST['sub_title_nonce'], '_sub_title_nonce' ) ) return;
    if ( ! current_user_can( 'edit_post', $post_id ) ) return;

    if ( isset( $_POST['sub_title_subtitle'] ) )
        update_post_meta( $post_id, 'sub_title_subtitle', esc_attr( $_POST['sub_title_subtitle'] ) );
}
add_action( 'save_post', 'sub_title_save' );

و ویرایش رو به این صورت دستی کردم که فقط تو عناوین جستجو کنه

<?php
}


function search_by_title_only( $search, $wp_query )
{
    global $wpdb;
    if ( empty( $search ) )
        return $search; // skip processing - no search term in query
    $q = $wp_query->query_vars;
    $n = ! empty( $q['exact'] ) ? '' : '%';
    $search =
    $searchand = '';
    foreach ( (array) $q['search_terms'] as $term ) {
        $term = esc_sql( like_escape( $term ) );
        $search .= "{$searchand}(($wpdb->posts.post_title LIKE '{$n}{$term}{$n}')";
        $searchand = ' AND ';
    }
    if ( ! empty( $search ) ) {
        $search = " AND ({$search}) ";
        if ( ! is_user_logged_in() )
            $search .= " AND ($wpdb->posts.post_password = '') ";
    }
    return $search;
}
add_filter( 'posts_search', 'search_by_title_only', 500, 2 );




 

جستجو درست کار میکنه ولی من می خوام تو متاباکسی که تعریف کردم هم مقادیر رو جستجو کنه ( متاباکس نام انگلیسی محصولات هستش . می خوام تو اون ها هم جستجو کنه ) با تشکر

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


لینک به ارسال
در 20 ساعت قبل، بویکا گفته است :

سلام دوستان یه سوال داشتم .

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


function sub_title_add_meta_box() {
    add_meta_box(
        'sub_title-sub-title',
        __( 'Sub-Title', 'sub_title' ),
        'sub_title_html',
        'product',
        'normal',
        'default'
    );
}
add_action( 'add_meta_boxes', 'sub_title_add_meta_box' );

function sub_title_html( $post) {
    wp_nonce_field( '_sub_title_nonce', 'sub_title_nonce' ); ?>

    <p>Sub title For Product</p>

    <p>
        <label for="sub_title_subtitle"><?php _e( 'subtitle', 'sub_title' ); ?></label><br>
        <input type="text" name="sub_title_subtitle" id="sub_title_subtitle" value="<?php echo sub_title_get_meta( 'sub_title_subtitle' ); ?>">
    </p><?php
}

function sub_title_save( $post_id ) {
    if ( defined( 'DOING_AUTOSAVE' ) && DOING_AUTOSAVE ) return;
    if ( ! isset( $_POST['sub_title_nonce'] ) || ! wp_verify_nonce( $_POST['sub_title_nonce'], '_sub_title_nonce' ) ) return;
    if ( ! current_user_can( 'edit_post', $post_id ) ) return;

    if ( isset( $_POST['sub_title_subtitle'] ) )
        update_post_meta( $post_id, 'sub_title_subtitle', esc_attr( $_POST['sub_title_subtitle'] ) );
}
add_action( 'save_post', 'sub_title_save' );

و ویرایش رو به این صورت دستی کردم که فقط تو عناوین جستجو کنه


<?php
}


function search_by_title_only( $search, $wp_query )
{
    global $wpdb;
    if ( empty( $search ) )
        return $search; // skip processing - no search term in query
    $q = $wp_query->query_vars;
    $n = ! empty( $q['exact'] ) ? '' : '%';
    $search =
    $searchand = '';
    foreach ( (array) $q['search_terms'] as $term ) {
        $term = esc_sql( like_escape( $term ) );
        $search .= "{$searchand}(($wpdb->posts.post_title LIKE '{$n}{$term}{$n}')";
        $searchand = ' AND ';
    }
    if ( ! empty( $search ) ) {
        $search = " AND ({$search}) ";
        if ( ! is_user_logged_in() )
            $search .= " AND ($wpdb->posts.post_password = '') ";
    }
    return $search;
}
add_filter( 'posts_search', 'search_by_title_only', 500, 2 );




 

جستجو درست کار میکنه ولی من می خوام تو متاباکسی که تعریف کردم هم مقادیر رو جستجو کنه ( متاباکس نام انگلیسی محصولات هستش . می خوام تو اون ها هم جستجو کنه ) با تشکر

سلام .

این ادرس دقیقا چیزیکه شما می خواید به دو صورت کدنویسی کرده

https://stackoverflow.com/questions/24183422/make-woocommerce-product-search-only-search-certain-fields

این ادرس هم خوبه .

https://wordpress.stackexchange.com/questions/78649/using-meta-query-meta-query-with-a-search-query-s

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

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


لینک به ارسال
در 2 ساعت قبل، Mirrajabi گفته است :

سلام .

این ادرس دقیقا چیزیکه شما می خواید به دو صورت کدنویسی کرده

https://stackoverflow.com/questions/24183422/make-woocommerce-product-search-only-search-certain-fields

این ادرس هم خوبه .

https://wordpress.stackexchange.com/questions/78649/using-meta-query-meta-query-with-a-search-query-s

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

دادا دمت گرم خودم حلش کردم . فقط اگه میشه یه لینک واسه آجاکس کردن فیلتر محصولات تو دسته بندی بده ( مثلا بر اساس قیمت )

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


لینک به ارسال

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

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

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

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

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

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

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

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


  • مطالب مشابه

    • توسط Behzadea12
      سلام دوستان اگر امکانش هست بهم کمک کنید یک جست و جوی ajax توی سایتم درست کنم 
      ممنون  
    • توسط haniyeh_ai
      سلام .
      من در بخش تنظیمات افزونه نمیتونم کاری کنم که وقتی کلمه a یا حرف انگلیشی دیگه ای میزنه یا عدد وارد میکنه بزنه یافت نشد؟
      کسی میدونه مشکل از کجاست؟
      آدرس سایتی که دارم از این افزونه استفاده میکنم.
      http://rashtfood.mehdikiani.com/
    • توسط ali_rasouli
      سلام به همه ی دوستان عزیز
       
      سرچ سایت من، فقط توی عنوان محصولات (title product) هستش و میخوام عوض ش کنم و عبارات دیگری رو هم سرچ کنه، مثلا من برای هر محصولم یه کد خاص دارم و این کد خاص یونیک هستش، میشه یه نگاه به کدم بندازین و کمک کنین تا بتونم تغییر ش بدم؟
       
      ممنون از همگی
      search.txt
    • توسط Ghasem Paran
      سلام
      کسی میدونه چطوری میشه از full text استفاده کرد ؟
      کوئری رو نوشتم اما کار نمیکنه :


      SELECT * FROM post WHERE MATCH(url) AGAINST ('php')

      قابلیت full text هم به جدول اضافه کردم ....
    • توسط سعید شعبانی
      افزونه Swiftype Search یکی از بهترین افزونه های جستجوگر در سایت های وردپرسی محسوب می شود که به تازگی توسط سایت Wpmu.org معرفی شده است. لازم به ذکر است که سایت Wpmu.org خودش جزء اولین استفاده کنندگان این افزونه می باشد. به طور مختصر چند مزیت این افزونه را برای شما ذکر می کنم.
      1- بدون نیاز به کد نویسی سریعا جایگزین جستجوگر عادی وردپرس می شود
      2- دادن گزارش از جستجو های انجام شده در سایت وردپرسی شما
      3- قابلیت شخصی سازی نتایج جستجو توسط شما را دارد یعنی شما می توانید برای نتایج جستجویی که کاربران می بینند خودتان تصمیم بگیرید
      4- با اکثر مرورگر های موبایل سازگاری دارد
      5- دارای API برای توسعه دهندگان وب می باشد
      6- قایلیت جستجو در دامین های مختلف
      اطلاعات بیشتر در مورد افزونه را می توانید اینجا بخوانید
      صفحه افزونه در مخزن وردپرس
      نمایی از افزونه Swiftype Search

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