Hola bpsysoficial, se nota que has hecho tu esfuerzo y además has planteado tu duda de forma entendible (ojalá todos fueran así).
Cuando ingresas datos a través de un campo de formulario, debes tener en cuenta que la base de datos te lo devolverá como una sola línea. Si quieres mostrarlo en líneas separadas, es preciso que lo conviertas en array con un explode, basándote en el salto de línea generado en el campo de texto:
Código PHP:
Ver original$mega_campos = get_post_meta($post->ID , 'mega' , true); // Consultando los datos
$mega_links = explode("\n" , $mega_campos); // Convirtiendo en array
Desde luego, un array debe ser procesado con un bucle que ejecute una iteración (o vuelta) por cada elemento:
Código PHP:
Ver originalforeach($mega_links as $m)
$mega_lista .= '
<li>'. make_clickable($m) .'</li>'; // make_clickable() te convierte el texto automáticamente en enlace
Listo. Sólo falta meterlo en una pequeña función para que sea más manipulable. Copia/pega lo siguiente en tu archivo functions.php:
Código PHP:
Ver originalfunction mega_lista() {
global $post;
$mega_campos = get_post_meta($post->ID , 'mega' , true);
$mega_lista = null;
if( !empty($mega_campos) ) { $mega_lista .= '
<ul>';
$mega_links = explode("\n" , $mega_campos);
foreach($mega_links as $m)
$mega_lista .= '
<li>'. make_clickable($m) .'</li>';
$mega_lista .= '
</ul>';
echo $mega_lista;
}
return false;
}
En tu single.php sólo coloca (dentro del loop por supuesto):