Tercera parte de las entradas dedicadas a un típico plugin "filtro" para Gesbit. Y es que, al hilo del plugin GbDefensio, se pueden apreciar ciertas mejoras, por decirlo así. Recuerda la primera parte de estas entradas, donde mostré el plugin, y la entrada en que lo describí línea por línea. Recuérdalas, digo, y, compara el código que se muestra en ellas con este que te presento ahora, ya sabes, perteneciente al plugin GbMarkdown de Gesbit.

class GbMarkdown extends GbPlugin 
{  
  public function OnActivatePlugin(){}
  public function OnDeactivatePlugin(){}
 
  public function FilterCallback($filterID, $content){
    if(($filterID == GBPLUGINS_FILTER_POST_CONTENT) 
     && is_readable($this->GetDirPScriptsPath().GBMARKDOWN_MAIN_SCRIPT)){
       require_once($this->GetDirPScriptsPath().GBMARKDOWN_MAIN_SCRIPT);
       return Markdown(html_entity_decode($content));
    }
    return $content;
  }
}

Así como ves es como luce el código fuente del plugin GbDefensio, la clase principal que lo conforma. Este es uno de los más o menos típicos plugins que hacen uso de un determinado filtro de Gesbit, de modo que actúan sobre cierto contenido, antes de que este se presente al usuario. ¿Es necesario que describa línea por línea el código fuente? Yo diría que no, ¿y tú?