Acciones

Como funciona Barrio CMS.

Las Acciones son funciones que podemos integrar en la plantilla para hacerla mas dináminca. Tenemos unas cuantas por defecto que son:

  • head: usada para incluir los estilos.
  • theme_before: comentarios tipo discus
  • theme_after: resolución de formularios
  • footer: Analytics y javascript

Creando Extensiones

Vamos a crear una extensión que automáticamente genere un enlace al final de cada pagina usando una acción que ya esta en la plantilla que es <?php Barrio::runAction('theme_after); ?>.

<?php
// llamamos a la acción theme_after
Action::add('theme_after',function(){
    // y ahora que enseñe esto
    echo '<a href="'.Barrio::urlBase().'/articulos">Ver articulos.</a>';
});

Y ahora en todas las páginas al final se verá ese enlace, asi de facil.

Ahora vamos añadir algo más, le vamos a decir que si está en la sección artículos y la página extensiones enseñe el texto y si no no enseñe nada.

<?php
// llamamos a la acción theme_after
Action::add('theme_after',function(){
    // urlSegment sirve para señalar un segmento del enlace
    // si pones var_dump(Barrio::urlSegments()) veras todos los segmentos del enlace
    if(Barrio::urlSegment(0) == 'articulos' && Barrio::urlSegment(1) == 'extensiones'){
         // y ahora que enseñe esto
        echo '<a href="'.Barrio::urlBase().'/articulos">Ver articulos.</a>';
    }
});

Ahora haremos una acción que cambie el fondo solo en esta página, para ello usaremos el Action::run('head') que hay en el archivo head.inc.html.

<?php
// llamamos a la accion head
Action::add('head',function(){
     // urlSegment sirve para señalar un segmento del enlace
    if(Barrio::urlSegment(0) == 'articulos' && Barrio::urlSegment(1) == 'extensiones'){
         // y ahora incrustamos esto
        echo '<style rel="stylesheet">
                body{
                    background:blue;
                    color:white;
                }
                pre,code{
                    background: #0000bb;
                    border-color: #00008e;
                    box-shadow: 0px 3px 6px -2px #02026f;
                    color: white;
                }
        </style>';
    }
});

Ultimo articulo

Kitchen Sink

De todo un poco como en bótica.

Ultimos articulos

Kitchen Sink

De todo un poco como en bótica.

Testeando Javascript

Testeando Javascript

Incluye el Javascript para crear paginas personali...

Jodit

Probando shortcodes #2