Crear Shortcodes para nuestro tema de WordPress

Desde que comenzamos con este proyecto, siempre quisimos que tuviese nuestro propio sello, y es por ello que la segunda plantilla que usamos en DesdeLinux, fue creada por nosotros al 100%.

Luego le siguieron otras versiones, y si bien podemos comprar o contratar determinados servicios web para crear nuestros diseรฑos como los de EstudioDWeb.com, o comprar plantillas ya creadas en ThemeForest.net, siempre hemos querido tener lo nuestro, adaptado a nuestras necesidades y pasarnos por DesarrolloWeb.com puede ser de ayuda ๐Ÿ˜€

De todas formas, me apasiona esto del Diseรฑo y Desarrollo Web, y ya estoy trabajando en el nuevo tema para DesdeLinux y les mostrarรฉ unos Pantallazos de como va quedando.

La idea es no salirnos de lo que ya estamos adaptados, por lo que muchos elementos permanecen igual o de forma parecida. Empiezo por la pรกgina de inicio

screenshot-dl

Y asรญ se verรญan los artรญculos:

screenshot-dl-post

Como ven, estรก quedando justo a nuestra medida y hemos incluido nuevos ShortCodes para la elaboraciรณn de los artรญculos.

Es por ello que se me ocurriรณ compartir con ustedes como crear uno de ellos (el de informaciรณn) por si desean incluirlos en sus temas de WordPress. O sea, algo como esto:

Este serรก el ShortCode de ejemplo

No soy experto en la programaciรณn con este CMS, por lo que no intentarรฉ explicar por quรฉ y cรณmo funciona de esta forma, solo les mostrarรฉ como hacerlo y punto.

Para ello hacemos uso de ยซla navaja suizaยป de WordPress, me refiero al fichero function.php que normalmente encontramos en casi todos los temas.

Brackets_Function

Ejemplo del Function.php con los ShortCodes de DesdeLinux

Lo que haremos en este fichero es aรฑadir la estructura de nuestro ShortCode y por supuesto, la etiqueta que lo muestra. Asรญ que vamos a ello.

Dentro del Function.php

Dentro de nuestro fichero function.php lo que pondremos serรก la estructura HTML del ShortCode, pero no es simplemente poner las etiquetas HTML asรญ como asรญ. Nos quedarรญa algo como esto:

// Info
function infobox( $atts, $content = null, $code = "" ) {
    $return = '<div class="alert-info">';
    $return .= $content;
    $return .= '</div>';
    return $return;
}

// El ShortCode
add_shortcode( 'info', 'infobox' );

De acรก aclaramos un par de cosas. Primero, cuando usamos dos barras comentamos la lรญnea, por lo tanto // Info es solo un comentario.

El nombre de la funciรณn, en este caso infobox puede cambiarse por el que queramos, pero debe coincidir con el nombre que usamos en la รบltima lรญnea.

En cada $return devolvemos lo que viene siendo las etiquetas HTML, y hay que tener en cuenta que despuรฉs del primero, hay que aรฑadir un punto delante del signo igual y la lรญnea termina con un signo de punto y coma

Ejemplo:

$return .= $content;

La variable $content que es donde va el contenido que pongamos en el ShortCode por defecto devolverรก un valor nulo si no ponemos nada.

Ahora, el nombre del ShortCode es lo que establecemos con:

add_shortcode( 'info', 'infobox' );

Donde se puede cambiar info por lo que queramos. Ahora, para que quede como en el ejemplo debemos poner:

[ info ]Este serรก el ShortCode de ejemplo[ /info ]

Aunque claro, sin los espacios, los cuales pongo porque evidentemente se activarรญa el ShortCode.

Estilo del ShortCode

Si se fijan en la lรญnea mรกs arriba, sin el cรณdigo PHP ni las variables, el ShortCode en HTML puro serรญa algo como esto:

<div class="alert-info"></div>

Por lo que solo nos queda aplicarle el estilo CSS.

.alert.alert-info
{
    background:#d9edf7 url(info.png) no-repeat 7px 50%;
    border-radius:4px;
    border:1px solid #bce8f1;
    color:#3a87ad;
    font-size:14px;
    margin:15px 15px;
    padding:15px 15px 15px 50px
    text-align:left
}

Y eso es todo.. Repito, no soy programador ni nada por el estilo, y la explicaciรณn que he dado es como yo entiendo que funciona el ShortCode ๐Ÿ˜›


Deja tu comentario

Tu direcciรณn de correo electrรณnico no serรก publicada. Los campos obligatorios estรกn marcados con *

*

*

  1. Responsable de los datos: Miguel รngel Gatรณn
  2. Finalidad de los datos: Controlar el SPAM, gestiรณn de comentarios.
  3. Legitimaciรณn: Tu consentimiento
  4. Comunicaciรณn de los datos: No se comunicarรกn los datos a terceros salvo por obligaciรณn legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu informaciรณn.

      sobrao72 dijo

    Me gusta como va quedando, os felicito.

         elav dijo

      Gracias, aรบn le falta mucho pero gracias.

      Rogers dijo

    Muy bueno!! Un tema asรญ me encantarรญa en mi WP.
    Te felicito!

         elav dijo

      No lo he puesto aรบn, te lo puedo vender JAJAJAJAJA.. Es broma ๐Ÿ™‚

      Manuel E. dijo

    Excelente, gracias por el compartir.
    Hace mucha falta este tipo de recursos en la web, explicando las cosas de forma clara.

    Saludos!

      eliotime3000 dijo

    Hermoso diseรฑo. A ver si para mi website me pasas esa plantilla para customizarla.

      cuervo291286 dijo

    eso se puede hacer en blogger ?

      javier dijo

    Pues nada, lo he puesto tal y como estรก y no me funciona, a que se puede deber? :/

    le coloco [info]informacion[/info]

    y en mi post de wordpress me aparece solo: informacion, desaparecen los corchetes, creo que algo anda mal :/

         Jhonny Silva dijo

      A lo mejor en tu plantilla los ShortCode no estรกn definidos en el function.php como en mi caso, estos valores los agregue en un archivo llamado shortcodes.php propio de mi tema