PHP - Bug en listado de WordPress

 
Vista:

Bug en listado de WordPress

Publicado por Jordi (1 intervención) el 24/01/2020 12:05:31
Hola,

Antes que nada disculpadme porque posiblemente diga muchas cosas sin sentido o muy elementales... no soy programador. Hace cinco años nos hicieron una página web con wordpress con las plantillas adaptadas. Una de las partes de esa web era un listado de los trabajos de nuestra empresa que hasta el día de hoy ha funcionado sin problemas.

Resulta que ahora al aumentar el número de trabajos mostrado duplica los resultados a partir del trabajo número 13. Hemos hecho pruebas y hemos llegado a la conclusión de que el problema es un bug en el bucle que los muestra. Aquí tenéis el enlace donde podéis ver el último trabajo duplicado (si añadimos más pasa lo mismo a partir de ese proyecto).

http://nakamurafilms.com/trabajos/

El motivo de escribir aquí en busca de ayuda es que la empresa que lo desarrolló ha desaparecido y no conseguimos contactar con quien lo programó.

No se si sería mucho pedir si alguien del foro nos podría ayudar a localizar el error. Os copio aquí abajo el código. Gracias de antemano.

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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
echo $descripcion;
$last_jobs = new WP_Query(array('post_type'=>'page', 'post_parent'=>8,'posts_per_page'=>-1 ));
if($last_jobs->have_posts()){
	echo' <div class="portfolio">';
	echo $texto_suelto;
	echo '<div class="row">';
	$row_cont=0;
	$lines_cont=2;
	$column_cont=1;
	while ( $last_jobs->have_posts() ) {
		$last_jobs->the_post();
		$list_categories='';
		$categories=get_the_category();
		$category_name=$categories[0]->name;
		if($row_cont%3==0 && $row_cont!=0){
			echo '</div><div class="row hidden">';
			$lines_cont++;
			$column_cont=1;
		}
 
		$info_content=' <a href="'.get_permalink().'">
                <div class="img" style="background-image:url(\''.wp_get_attachment_url( get_post_thumbnail_id($post->ID) ).'\')"></div>
                <div class="title">
                  <h3>'.get_the_title().'</h3>
                  <p>'.$category_name.'</p>
                </div>
              </a>';
        if($lines_cont%2==0 && $column_cont==1){
        	echo '<div class="medium-5 columns no-padding hidden">
        		<div class="work full">'.$info_content.'</div>
        		</div>';
        }
        if($lines_cont%2==0 && $column_cont==2){
        	echo  ' <div class="medium-7 columns no-padding hidden">
        		   <div class="medium-12 columns no-padding hidden">';
        	echo  '<div class="work half two">'.$info_content.'</div>';
        	echo '</div>';
        }
         if($lines_cont%2==0 && $column_cont==3){
         	echo  '<div class="medium-12 columns no-padding hidden">';
        	echo  '<div class="work half two">'.$info_content.'</div>';
        	echo '</div>
        		 </div>';
         }
           if(($lines_cont%5==0 || $lines_cont%3==0) && $column_cont==1){
           	echo  ' <div class="medium-7 columns no-padding hidden">
        		   <div class="medium-12 columns no-padding hidden">';
        	echo  '<div class="work half two">'.$info_content.'</div>';
        	echo '</div>';
        }
        if(($lines_cont%5==0 || $lines_cont%3==0) && $column_cont==2){
        	echo  '<div class="medium-12 columns no-padding hidden">';
        	echo  '<div class="work half two">'.$info_content.'</div>';
        	echo '</div>
        		 </div>';
        }
         if(($lines_cont%5==0 || $lines_cont%3==0) && $column_cont==3){
			 echo '<div class="medium-5 columns no-padding hidden">
			<div class="work full">'.$info_content.'</div>
			</div>';
         }
		$column_cont++;
		$row_cont++;
	}
	if(($lines_cont%2==0 && $lines_cont%3!=0 && $column_cont==2)){
		echo '</div>';
	}else if(($lines_cont%3==0 && $column_cont==1)){
		echo '</div>';
	}
	echo '</div>';//cierra el row
	echo '</div>';
}
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de José Manuel
Val: 150
Ha mantenido su posición en PHP (en relación al último mes)
Gráfica de PHP

Bug en listado de WordPress

Publicado por José Manuel (62 intervenciones) el 27/01/2020 17:56:20
Hola Jordi:

El ánimo de todos los que acuden a estos foros es tal cual, ayudar. Sin embargo, me temo que difícilmente podemos hacerlo en este caso con solamente ese código y sin poder hacer pruebas con un "todo" que nos permita hacerlas de forma realista.

Lo que pides es un trabajo de mantenimiento. Tendrás que contactar con un programador con los conocimientos necesarios y acordar una tarifa por sus servicios probablemente. En este portal tienes una sección donde puedes solicitarlo: https://www.lawebdelprogramador.com/trabajo/.

Personalmente creo que el código que muestras crea la página que indicas pero no está ahí el error; pienso que la variable $last_jobs es la que ya lleva el problema porque es lo que devuelve la consulta que realiza WP_Query. Y ahí está el dilema: WordPress es ese "todo" y sin poder hacer pruebas en el conjunto de éste, difícilmente se podrá ver el problema y su solución. Es mi humilde opinión.

Un saludo,
https://obelearningservices.com/blog/
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar