
If dentro de if en un foreach
Publicado por Herold (7 intervenciones) el 07/06/2016 12:05:00
Hola a todos,
Tengo una duda que me está dando dolor de cabeza. Estoy editando un Wordpress en un servidor compartido.
Estoy haciendo una recogida de productos en Woocommerce para mostrarlos en una página personalizada.
El problema es que a la hora de recoger los productos dentro de un array, tengo que separarlo por categorias, por lo que me es necesario meter un if dentro del bucle; y dentro de ese if, necesito valorar si tiene una imagen destacada o no, por lo que necesito meter otro if dentro de ese if.
La web me ha dado un error 500 y no es por escribir mal alguna función, ya lo he comprobado. Es ese if dentro del if, dentro del foreach; pero claro, tampoco se me ocurre otro metodo.
No sé si es cosa del servidor o directamente que estoy haciendo mal metiendo esas condiciones de esa manera.
Debajo os dejo una copia del código hasta ahora.
A ver si podeis echarme una mano, gracias.
Tengo una duda que me está dando dolor de cabeza. Estoy editando un Wordpress en un servidor compartido.
Estoy haciendo una recogida de productos en Woocommerce para mostrarlos en una página personalizada.
El problema es que a la hora de recoger los productos dentro de un array, tengo que separarlo por categorias, por lo que me es necesario meter un if dentro del bucle; y dentro de ese if, necesito valorar si tiene una imagen destacada o no, por lo que necesito meter otro if dentro de ese if.
La web me ha dado un error 500 y no es por escribir mal alguna función, ya lo he comprobado. Es ese if dentro del if, dentro del foreach; pero claro, tampoco se me ocurre otro metodo.
No sé si es cosa del servidor o directamente que estoy haciendo mal metiendo esas condiciones de esa manera.
Debajo os dejo una copia del código hasta ahora.
A ver si podeis echarme una mano, gracias.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
function recogerExtras() {
$html = ''; $htmlExtra = ''; $htmlExtra2 = ''; $htmlExcursiones = ''; $terminos = '';
$id_producto = get_the_ID();
$matriz = new WC_Product($id_producto);
$vinculados = $matriz->get_cross_sells();
$extras = new WP_Query(array('post_type' => 'product', 'post__in' => $vinculados));
foreach($extras->posts as $extra) {
$terminos = get_the_terms($extra->ID, 'product_cat');
if($terminos[0]->slug == 'seguros') {
$htmlExtra .= '<div>';
if($html != '') { $html = ''; } // Aquí va la Imagen Destacada. Condición que da problemas.
$htmlExtra .= '</div>';
}
}
$html .= '<div class="vc_col-sm-12">';
$html .= '<div class="vc_col-sm-4"><h4 style="text-align:center;">Seguros</h4>'.$htmlExtra.'</div>';
$html .= '<div class="vc_col-sm-4"><h4 style="text-align:center;">+ Seguros</h4>'.$htmlExtra2.'</div>';
$html .= '<div class="vc_col-sm-4"><h4 style="text-align:center;">Excursiones</h4>'.$htmlExcursiones.'</div>';
$html .= '</div>';
//return '<pre>'.print_r($extras->posts).'</pre>';
return $html;
}
Valora esta pregunta


0