Ayuda para crear un enlace php y wordpress

Ruiz86 Seguir

Zeta
SEO
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
18 Dic 2012
Mensajes
1.523
Edad
38
La web en cuestión: English Centre Emily |

Si os fijais en el slider, el titulo de cada uno y el boton de ver mas si tiene la url pero quiero además agregársela a los cuatro items de abajo por ejemplo a cada título de cada item y no lo consigo.

Códigos:
De los sliders:
HTML:
<?php if (have_posts()) : while (have_posts()) : the_post();

			global $post; ?>

				<div class="slide">

					<?php

					$width = 847;

					$height = 309;

					

					$titletext = get_the_title();

		

					$thumbnail = get_thumbnail($width,$height,'featured-image',$titletext,$titletext,false,'Featured');

					

					$arr[$i]['titletext'] = get_post_meta( $post->ID, 'Smalltitle', true ) ? get_post_meta( $post->ID, 'Smalltitle', true ) : truncate_title(20,false);

					$arr[$i]['description'] = get_post_meta( $post->ID, 'Smalldesc', true ) ? get_post_meta( $post->ID, 'Smalldesc', true ) : truncate_post(45,false);

					

					$thumb = $thumbnail["thumb"];

					print_thumbnail($thumb, $thumbnail["use_timthumb"], $titletext, $width, $height, 'featured-image'); ?>

					<span class="overlay"></span>

					<div class="description">

						<h2 class="featured-title"><a href="<?php the_permalink(); ?>"><?php the_title(); ?></a></h2>

						<p><?php truncate_post(350); ?></p>

						<a href="<?php the_permalink(); ?>" class="readmore"><?php esc_html_e('Leer más', 'Sky'); ?></a>

					</div> <!-- end .description -->

				</div> <!-- end .slide -->

			<?php $i++; endwhile; endif; wp_reset_query(); ?>


De los 4 items que hay bajo el slider:
HTML:
<div id="controllers" class="clearfix">

			<ul>

				<?php for ($i = 0; $i < $featured_num; $i++) { ?>

					<li<?php if ( $i == 0 ) echo ' class="active"'; ?>>

						<div class="controller">

							<h3><?php echo esc_html( $arr[$i]['titletext'] ); ?></h3>
							<p><?php echo esc_html( $arr[$i]['description'] ); ?></p>

						</div>	

					</li>

				<?php } ?>

			</ul>

			<div id="left-shadow"></div>

			<div id="right-shadow"></div>

		</div> <!-- end #controllers -->

Yo he intentando en el segundo código cambiar esta línea:
HTML:
<h3><?php echo esc_html( $arr[$i]['titletext'] ); ?></h3>
por esta:
HTML:
<a href="<?php the_permalink(); ?>"><h3><?php echo esc_html( $arr[$i]['titletext'] ); ?></h3></a>
Y entonces en cada título de los items de abajo logro una url pero no es la correcta, me aparece la misma en todos y ni siquiera corresponde a ninguno de ellos, es de otro post de otra categoría.

Espero su ayuda :D

---------- Post agregado el 31-mar-2014 hora: 15:47 ----------

Sigo necesitando un poquito de ayuda please
 
Última edición:

Ruiz86

Zeta
SEO
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
18 Dic 2012
Mensajes
1.523
Edad
38
Nadie puede ayudarme?
 

Kobra17

Dseda
Verificado por Whatsapp
Desde
13 Abr 2013
Mensajes
1.046
Nadie puede ayudarme?


Vamos a ver si te sirve.
Los items de abajo usan los datos del array "$arr", así que le añadiremos un dato.

Después de la linea
PHP:
$arr[$i]['description'] = get_post_meta( $post->ID, 'Smalldesc', true ) ? get_post_meta( $post->ID, 'Smalldesc', true ) : truncate_post(45,false);
Añadimos esta linea
PHP:
$arr[$i]['url'] = the_permalink();

En el código de lo items cambiamos la linea
PHP:
<h3><?php echo esc_html( $arr[$i]['titletext'] ); ?></h3>
por esta otra
PHP:
<a href="<?php echo esc_html( $arr[$i]['url'] ); ?>"><h3><?php echo esc_html( $arr[$i]['titletext'] ); ?></h3></a>

Creo que así te funcione.
 

Ruiz86

Zeta
SEO
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
18 Dic 2012
Mensajes
1.523
Edad
38
Vamos a ver si te sirve.
Los items de abajo usan los datos del array "$arr", así que le añadiremos un dato.........

Muchas gracias Kobra por contestar, he añadido tal y como me has indicado aunque yo ya intenté algo similar y me ocurría lo mismo que sale ahora, siempre coje la misma URL, la de la portada.
Compruebalo ya que he dejado los cambios activos en la web: English Centre Emily |
Además me sale la url fea xD justo encima del slider.

Quedo a la espera de tu contestación :p
 
Última edición:

Kobra17

Dseda
Verificado por Whatsapp
Desde
13 Abr 2013
Mensajes
1.046
Muchas gracias Kobra por contestar, he añadido tal y como me has indicado aunque yo ya intenté algo similar y me ocurría lo mismo que sale ahora, siempre coje la misma URL, la de la portada.
Compruebalo ya que he dejado los cambios activos en la web: English Centre Emily |
Además me sale la url fea xD justo encima del slider.

Quedo a la espera de tu contestación :p



Prueba a modificar las lineas que te dije por estas otras:
PHP:
$arr[$i]['url'] = get_permalink($post->ID);
PHP:
<h3><a href="<?php echo esc_html( $arr[$i]['url'] ); ?>"><?php echo esc_html( $arr[$i]['titletext'] ); ?></a></h3>


Y discúlpame si cometo fallos, no soy profesional.
 

Ruiz86

Zeta
SEO
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
18 Dic 2012
Mensajes
1.523
Edad
38
Muy buena Kobra17 ahora si aparece el enlace pero no ejecuta la acción de ir al post, no tienes que disculparte en absoluto, demasiado es que te brindes a ayudar desinteresadamente y solo por ello ya es de agradecer.

Gracias de nuevo, está actualizada la web por si quieres comprobarla y comentarme porque no abre nuevo enlace.

Prueba a modificar las lineas que te dije por estas otras:
PHP:
$arr[$i]['url'] = get_permalink($post->ID);
PHP:
<h3><a rel="nofollow" href="<?php echo esc_html( $arr[$i]['url'] ); ?>"><?php echo esc_html( $arr[$i]['titletext'] ); ?></a></h3>


Y discúlpame si cometo fallos, no soy profesional.
 
Última edición:

Galbatorix

Dseda
¡Usuario con pocos negocios! ¡Utiliza siempre saldo de Forobeta!
Desde
13 May 2013
Mensajes
1.231
El problema debe se que creas el $arr dentro del ciclo while, por lo tanto su alcance está dentro de ese ciclo. Cuando sales del ciclo, el $arr se debería desaparecer porque no es una variable global. Al terminar el ciclo limpias todo the_post() con el reset_query por lo que en el arroyo solo queda la última consulta.

En todo caso, asegúrate que $arr sea global (no se ve eso en tu codigo).

Sent from my Galaxy Nexus using Tapatalk
 

Ruiz86

Zeta
SEO
Verificación en dos pasos activada
Verificado por Whatsapp
¡Ha verificado su Paypal!
Desde
18 Dic 2012
Mensajes
1.523
Edad
38
El problema debe se que creas el $arr dentro del ciclo while, por lo tanto su alcance está dentro de ese ciclo. Cuando sales del ciclo, el $arr se debería desaparecer porque no es una variable global. Al terminar el ciclo limpias todo the_post() con el reset_query por lo que en el arroyo solo queda la última consulta.

En todo caso, asegúrate que $arr sea global (no se ve eso en tu codigo).

Sent from my Galaxy Nexus using Tapatalk

Definiendo la variable $arr como global se carga la web y no aparece el slider.

Aquí he dejado el código completo del php en cuestión:
PHP:
 featured.php - Pastebin.com[/url]

Sigo esperando ayuda :p
 
Arriba