01-25-2021, 03:12 PM
3

[img]Registrate o inicia tu sesión para ver este contenido[/img]
Funcion:
Obtiene la segunda (2) imagen (si existe) que tenga el cuerpo del post, porque generalmente en un post colocan primero una imagen de bienvenida y luego un cover, imagen demo, etc que sería lo mejor para mostrar en la portada.
En c.core.php --> inc --> class --> c.core.php
Antes de la ultima llave } agregar:
Código PHP: ( Seleccionar Todo )
/*
* Sacar imagen del post
* si hay mas de una imagen, tomamos la 2 (casi siempre la 1 es de "bienvenido")
*/
function extraer_img($texto) {
// del tipo [img] o [img]imagen[/img]
preg_match_all('/(\[img(\=|\]))((http|https)?(\:\/\/)?([^\<\>[:space:]]+)\.(jpg|jpeg|png|gif))(\]|\[\/img\])/i', $texto, $imgs);
$total = count($imgs[3]);
// Sacamos la mejor imagen posible
$img = (count($imgs[3]) > 1) ? $imgs[3][1] : $imgs[3][0];
if(empty($img)) $img = false;
//
return $img;
}
Con esto tendremos la función en el núcleo del script para poderla globalizar tanto en posts como en otros lugares, por ejemplo crear eventos en el calendario.
En c.posts.php --> inc --> class --> c.posts.php
Buscar:
Código PHP: ( Seleccionar Todo )
$lastPosts['data'] = result_array($query);
Debajo agregar:
Código PHP: ( Seleccionar Todo )
foreach($lastPosts['data'] as $id => $row){
$lastPosts['data'][$id]['post_cover'] = $tsCore->extraer_img($lastPosts['data'][$id]['post_body']);
}
Con esto obtenemos la imagen extraida del post.
Ahora la variable obtenida para la url de la imagen sería {$p.post_cover} como muchos usan temas diferentes dependerá de su plantilla donde tengan que editar lo siguiente, generalmente será el archivo m.home_last_posts.tpl y la imagen sería:
Código PHP: ( Seleccionar Todo )
<img src="{if $p.post_cover}{$p.post_cover}{else}{$tsConfig.images}/no-cover.jpg{/if}" width="80" heiht="80" />
Como pueden notar hay una condición que, si existe la imagen la muestra, de lo contrario mostrara una imagen predeterminada llamada [b]no-cover.jpg pero esto es opcional si la quieren mostrar porque también puede ser una imagen dependiendo de su categoría como se muestra en Taringa.[/b]
Creditos: Debes agradecer para ver el contenido...


Facebook
Twitter
Reddit
Digg
del.icio.us
Tumblr
Pinterest
Blogger
Fark
LinkedIn
Mix
Google