Añadir precios a widgekit con datos de woocomerce

Ratio: 5 / 5

Inicio activadoInicio activadoInicio activadoInicio activadoInicio activado
 

Es curioso pero widgetkit 2 de yootheme no trae por defecto la opción de mostrar el precio de los productos cuando usas la procedencia de datos de Woocomerce.

La solución:

Añadir en la linea 60  de wp-content/plugins/widgetkit/plugins/content/woocommerce/plugin.php:
$data['id'] = $post->ID ;
 

Una vez hemos insertado esto tenemos que buscar el tipo de widget que usamos. Por ejemplo si usamos un slider tendrás que ir al plugin de slider de widgetkit, en este caso pondré el ejemplo de grid.

Añadir deespués de $meta='' wp-content/plugins/widgetkit/plugins/widgets/grid/views/widget.php 

// Meta
    $meta = '';
    $price = wc_get_product($item['id'])->get_price();
        $meta .= '<p>'.$price.' €</p>';

 

Si quieres darle algo de estilos podrías coger y añadir en <p> una clase

 $price = wc_get_product($item['id'])->get_price();
        $meta .= '<p class="preciopersonalizado">'.$price.' €</p>';

Si te das cuenta en meta sale escrito por y las fechas, a no ser que tengas oculto meta. Esto lo puedes haber hecho desde el mismo plugin o por css con display:none. Si quieres que solo aparezca el precio y no estos datos borra después de meta lo siguiente

 if ($item['date']) {
            $date = '<time datetime="'.$item['date'].'">'.$app['date']->format($item['date'], $settings['date_format']).'</time>';
            if ($item['author']) {
                $meta = $app['translator']->trans('Written by %author% on %date%',  array('%author%' => $item['author'], '%date%' => $date));
            } else {
                $meta = $app['translator']->trans('Written on %date%',  array('%date%' => $date));
            }
        } elseif ($item['author']) {
            $meta = $app['translator']->trans('Written by %author%',  array('%author%' => $item['author']));
        }

        if ($item['categories']) {

            $categories = array();
            foreach ($item['categories'] as $category => $url) {
                $categories[] = '<a href="'.$url.'">'.$category.'</a>';
            }
            $categories = implode(', ', array_filter($categories));

            $meta .= ($meta) ? '. ' : '';
            $meta .= $app['translator']->trans('Posted in %categories%',  array('%categories%' => $categories));

        }

 chrome_yaW1rKAdQ5.png