Previamente en el artículo Cómo configurar los metatags HTML para SEO hemos comentado la importancia y el uso correcto de las etiquetas meta, utilizando esta información crearemos funciones PHP para automatizar esta tarea.
Título
El titulo debe seguir los siguientes lineamientos:
- No debe exceder los 60 caracteres.
- No debe contener etiquetas HTML.
- Utilizar un formato como: Article title | Brand name
Con esta información creamos una función PHP para limitar a 60 caracteres el título sin cortar las palabras, además si se provee el nombre del sitio lo concatenamos de forma adecuada.
<?php
/**
* Make title using best practices
*
* @param string $text
* @param string $sitename
*/
function make_title(string $text = '', string $sitename = '')
{
$maxlength = 60;
if ($sitename != '') {
$maxlength = $maxlength - strlen($sitename) - 3;
}
// clean text
$text = strip_tags($text);
$text = trim($text);
// limit to max characters
if (strlen($text) > $maxlength) {
$subtext = substr($text, 0, $maxlength - 3);
$endspace = strrpos($subtext, ' ');
$text = substr($subtext, 0, $endspace) . '...';
}
// if exist concatenate sitename
if ($sitename != '') {
$text = $text . " | " . $sitename;
}
echo $text;
}
Descripción
La descripción se deben seguir los siguientes lineamientos:
- No debe exceder los 160 caracteres
- No debe contener etiquetas HTML.
Con esta información creamos una función PHP para eliminar las etiquetas HTML, limitar a 160 caracteres el texto sin cortar las palabras.
<?php
/**
* Make description using best practices
*
* @param string $text
*/
function make_description(string $text = '')
{
$maxlength = 160;
// clean text
$text = strip_tags($text);
$text = trim($text);
// limit to max characters
if (strlen($text) > $maxlength) {
$subtext = substr($text, 0, $maxlength - 3);
$endspace = strrpos($subtext, ' ');
$text = substr($subtext, 0, $endspace) . '...';
}
echo $text;
}
Ejemplo de uso
El uso de estas funciones es sencillo, se le pasa como parámetro el texto que se desea formatear y listo:
<html lang="es">
<head>
<meta charset="uft-8">
<title><?php make_title($title, $sitename); ?></title>
<meta name="description" content="<?php make_description($description); ?>">
<meta name="viewport" content="width=device-width, initial-scale=1">
</head>
Para finalizar hemos creado un ejemplo completo con un formulario para ingresar el contenido para los metatags para devolverlos formateados correctamente.
Envíar Comentario
En este sitio los comentarios se publican previa aprobación del equipo de Kodetop. Evita los comentarios ofensivos, obscenos o publicitarios. Si deseas publicar código fuente puedes hacerlo entre las etiquedas
<pre></pre>