- Hola Nico, hay alguna posibilidad de que puedas poner tanto el shorcode que has puesto en function.php para pedir presupuesto por cada categoría o población y también me ha gustado y no he entendido bien lo de Los vídeos que coloca en cada post uno diferente...
Foro
El shortcode personalizado que he utilizado en reformas dentro de functions.php es este:
function shortcodePidePresupuesto($atts = null) { return do_shortcode("BOTON DE PEDIR PRESUPUESTO ".$atts['provincia']); } add_shortcode('PIDEPRESUPUESTO', 'shortcodePidePresupuesto');
Te dejo los shortcodes usados en la campaña de contenido de PGP para el tema de vídeo (que no siempre me sacaba vídeo por eso uso condicional)
@if({reformas(videoid)}) <h3 id="video">Como {reformas(kw2)}</h3> https://www.youtube.com/watch?v={reformas(videoid)} @endif ...................... @if({reformas(videoid)}) <a href="#video">[page-generator-pro-media-library url="{reformas(videoimg)}" alt="{reformas(videotitulo)}" copy="1" size="medium_large"]</a> @endif
El script PHP que he utilizado para extraer los videos de youtube con imagen y titulo es este:
<?php $con = mysqli_connect("localhost", "valet", "Secret", "reformas"); mysqli_set_charset($con, "utf8"); // Funcion para descargar el contenido HTML de una URL function GETSIMPLE($url) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'accept-language: es-ES,es;q=0.9,en;q=0.8,pt;q=0.7,fr;q=0.6,ru;q=0.5,it;q=0.4' )); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); $server_output = curl_exec($ch); curl_close ($ch); return $server_output; } // Funcion para eliminar los Emojis de un texto function remove_emoji($string) { // Match Emoticons $regex_emoticons = '/[\x{1F600}-\x{1F64F}]/u'; $clear_string = preg_replace($regex_emoticons, '', $string); // Match Miscellaneous Symbols and Pictographs $regex_symbols = '/[\x{1F300}-\x{1F5FF}]/u'; $clear_string = preg_replace($regex_symbols, '', $clear_string); // Match Transport And Map Symbols $regex_transport = '/[\x{1F680}-\x{1F6FF}]/u'; $clear_string = preg_replace($regex_transport, '', $clear_string); // Match Miscellaneous Symbols $regex_misc = '/[\x{2600}-\x{26FF}]/u'; $clear_string = preg_replace($regex_misc, '', $clear_string); // Match Dingbats $regex_dingbats = '/[\x{2700}-\x{27BF}]/u'; $clear_string = preg_replace($regex_dingbats, '', $clear_string); return $clear_string; } $urlyt = "https://www.youtube.com/results?search_query=".urlencode("como+".$KEYWORD); $content = GETSIMPLE($urlyt); preg_match('/"videoId":"(.*)".*thumbnails""(.*)\?.*"accessibilityData""(.*)"/siU', $content, $video); if( ! empty($video[1])) { $video[3] = mysqli_escape_string($con, remove_emoji($video[3])); mysqli_query($con,"INSERT INTO videos (`keyword`, `youtube`, `youtube_img`, `youtube_label`) VALUES ('como ".$guiacoste_array[2]."','".$video[1]."','".$video[2]."','".$video[3]."')"); } ?>
No entiendo bien este último shorcode.
Lo tengo que meter en algún PHP ? En function?
O con el de Page generator metiendo en las campañas me vale?
- Quiero decir, sí quiero en una campaña por ejemplo, "reparación de lavadoras" con meter en el pgp
Creo una keyword { reparacion}
- @if({reparacion(videoid)})
- <h3 id="video">Como {reparacion(kw2)}</h3>
- https://www.youtube.com/watch?v={reparacion(videoid)}
- @endif
Me valdría?
Te valdría si en tu listado de keywords has creado las columnas de videoid y para eso tienes que usar el script PHP final que te pongo en mi primera respuesta
Os hago un vídeo del paso a paso de como se hace y os lo subo al curso de PGP
Sí por favor