Integrar buscador personalizado en sitio web con woocommerce

  • Autor Autor FinerGaby
  • Fecha de inicio Fecha de inicio
F

FinerGaby

Beta
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
screen_shot_2019-04-22_at_18.33.07.png


Hola chicos tengo que hacer una web travel con este buscador incluido la cuestion que este buscador venia con el theme pero es totalmente ajeno a woocommerce segun tengo entendido usa advance field para el search bueno pude integrar woocommerce luego de varios dias al theme pero el buscador es ajeno y necesito que se pueda buscar de esa forma que ven los producto woocommerce.
Alguna idea como puedo hacerlo o si conocen algun tutorial para poder hacer o plugin la verdad vengo buscando hace 3 dias en google como puedo hacer este buscador en woocommerce y no hay nada de INFORMACION.

si alguno sabe por favor se lo agradezco muchisimo, estoy desesperado :x.

este el codex que usa ese buscador no ligado con woocommerce usando advance fields
no tengo idea trate de editarlo y ni la mas minima idea.

PHP:
function pages_home_func() {
    $result = "";
    $result .= '
<div class="tabs_wrapper tabs1_wrapper">
                <div class="tabs tabs2">
                    <div class="tabs_tabs tabs1_tabs">
                        <ul>';

    $psst = get_post_types();
    foreach($psst as $val) {
        $pstobj = get_post_type_object($val);

        if(substr($val, -5) == "_post" && $pstobj->has_archive == 1) {
            $cls = explode("_post", $val);

            if($val == "flights_post") {
                $class = 'class="'.$cls[0].' active"';
            }
            else {
                $class = 'class="'.$cls[0].'"';
            }
            $result .= '<li '.$class.'><a href="'.'#'.$val.'">'.$pstobj->labels->name.'</a></li>';
        }
    }
    $result .= '            </ul>';

    $result .= '</div>';
    $result .= '<div class="tabs_content tabs1_content">';

    $psst = get_post_types();
    foreach($psst as $val) {

        if(substr($val, -5) == "_post") {

            $result .= '<div id="'.$val.'">';
            $result .= '<form method="POST" action="'.get_site_url()."/".$val.'" class="form1">';
            $result .= '<div class="row">';

            $latest_cpt = get_posts("post_type='.$val.'&numberposts=1");
            $order = array();
            $fields = get_field_objects($latest_cpt[0]->ID);
            if( $fields ) {
                foreach ($fields as $key => $fld) {
                    $order[$key] = $fld['order_no'];
                }
                array_multisort(
                    $order, SORT_ASC,
                    $fields
                );
                foreach ($fields as $field_name => $field) {
                    if($field['instructions'] == "wide") {
                        $wd = 4;
                    }
                    else {
                        $wd = 2;
                    }
                    if ($field['instructions'] != "hide" && $field['instructions'] != "hide_search" && $field['instructions'] != "hide_search_home" && $field['instructions'] != "aside") {
                        if ($field['type'] == "date_picker") {
                            $bm = ($_GET[$field['name']]) ? $_GET[$field['name']] : $_POST[$field['name']];
                            $result .= '
                                        <div class="col-sm-4 col-md-'.$wd.'">
                                            <div class="input1_wrapper">
                                                <label>'.$field['label'].'</label>
                                                <div class="input1_inner">
                                                    <input type="text"
                                                           value="'.$bm.'"
                                                           name="'.$field['name'].'"
                                                           class="input datepicker"
                                                           placeholder="Mm/Dd/Yy">
                                                </div>
                                            </div>
                                        </div>
                                    ';
                        } else if ($field['type'] == "number") {
                            $nm = ($_GET[$field['name']]) ? $_GET[$field['name']] : $_POST[$field['name']];
                            $result .= '
                                        <div class="col-sm-4 col-md-'.$wd.'">
                                            <div class="input1_wrapper">
                                                <label>'.$field['label'].':</label>

                                                <div class="input2_inner">
                                                    <input type="text"
                                                           value="'.$nm.'"
                                                           name="'. $field['name'].'"
                                                           class="input">
                                                </div>
                                            </div>
                                        </div>
                                        ';

                        } else {

                            $fieldsA = get_meta_values($field['name'], $val);
                            $froms = array();
                            foreach ($fieldsA as $vld) {
                                if (!in_array($vld, $froms)) {
                                    $froms[] = $vld;
                                }
                            }


                            $result .= '
                                        <div class="col-sm-4 col-md-'.$wd.'">
                                            <div class="select1_wrapper">
                                                <label>'. $field['label'].':</label>

                                                <div class="select1_inner">
                                                    <select name="'. $field['name'].'"
                                                            class="select2 select"
                                                            style="width: 100%">
                                                        <option
                                                            value="">'. $field['default_value'].'</option>
                                                        ';
                            foreach ($froms as $from) {
                                $result .='<option ';
                                if($from == $_GET[$field['name']] || $from == $_POST[$field['name']]){
                                    $result .= 'selected';
                                }
                                $result .='value="'. $from.'">'. $from.'</option>';
                            }
                            $result .= '</select>
                                                </div>
                                            </div>
                                        </div>
                                        ';

                            unset($froms);
                        }
                    }
                }
            }

            $result .= '
                        <div class="col-sm-4 col-md-2">
                            <div class="button1_wrapper">
                                <input type="hidden" name="doSearch" value="yes">
                                <button type="submit" class="btn-default btn-form1-submit">Search</button>
                            </div>
                        </div>
                    </div>
                </form>
            </div>
            ';

        }
    }




    $result .= '</div>';
    $result .= '</div>';
    $result .= '</div>';

    return $result;
}

add_shortcode('pages_search', 'pages_home_func');
 
Última edición:
No entiendo muy bien lo que quieres hacer.
 
Lo que pasa que el theme vienen con unos custom types de productos que usa ese search/buscador para buscar los productos, la cosa va que esos custom types no son compatible con woocommerce T_T osea un sistema completamente ajeno.
A todo esto ellos quieres un buscador como mostre en la imagen que se suponia que venia con el theme incluido pero tengo que usar si o si woocommerce para usar "mercado pago de argentina" y ese buscaror no me sirve porque es completamente ajeno a woocommerce y no se hacer un buscador de esa forma para woocoommerce.

Entonces deberia tratar de cambiar la pregunta, ya que no se como solucionar el tema del buscador.

¿Hay alguna forma de integrar custom types personalizados a woocommerce para vender? porque no me queda otra :v.

[MENTION=41253]visitardubai[/MENTION]
 
Última edición:
Atrás
Arriba