Desenvolvimento de Plugins: Arquivos principais de um Plugin

April 8, 2009 por Kaléu Caminha   Comentários (2)

, , ,

Começo hoje uma série de artigos e tutoriais sobre o desenvolvimento de plugins para o Elgg. Entre os temas que serão abordados ao longo das próximas semanas estão: "Criação de Widgets"; "Inserção, edição e exclusão de objetos no banco de dados"; "Desenvolvimento e adaptação de temas"; "Uso de AJAX" e a "Engine do Elgg".

Neste primeiro artigo falarei sobre a estrutura de diretórios que um Plugin pode possuir e qual a função dos principais arquivos.

Reconhecendo um Plugin

No Elgg, um Plugin é apenas uma pasta dentro do diretório "/mod" contendo um arquivo chamado "start.php". O nome do diretório será o nome do plugin, por exemplo, ao construir um plugin de notícias posso criar um diretorio com o nome "noticias".

Possibilidades dos Plugins

No Elgg, um Plugin pode ser desde um tema novo para o site, até um complexo sistema de classificados ou álbum de fotos. Os diretórios irão variar conforme a função do plugin. Neste artigo indicarei apenas os principais arquivos e suas funções.

O Diretório Base

Para fins didáticos utilizarei uma pasta com os seguintes subdiretórios e arquivos.

/nome_plugin
    /actions
    /languages
    /views
        /default
            /nome_qualquer
            /widgets       
    start.php
    mainfest.xml

/actions

Nesta pasta estarão todos os arquivos que inserem, alteram ou excluem registros da base de dados.

/languages

Contém os arquivos referentes às linguagens nas quais o plugin pode ser visualizado.

/views/default

Aqui estarão todos os arquivos que exibem algo ao usuário, podem estar neste diretório o HTML de formulários, telas de listagem, css, javascript. etc.

Pode ser criado qualquer outro diretório que auxilie na organização dos arquivos, como por exemplo um diretório "/form" apenas para as views correspondentes aos formulários. 

/views/widgets

Aqui estarão todas as visualizações que correspondem a Widgets de um determinado plugin.

start.php

Este é o principal arquivo do Plugin, nele serão registradas todas as ações do seu plugin, você poderá adicionar ítens aos menus, indicar configurações, manipular requisições às suas páginas, enfim, absolutamente qualquer coisa que você faça passará por esse arquivo.

manifest.xml

Este arquivo XML contém informações institucionais do Plugin, nome do autor, descrição, página da web, etc.

Conclusão

Neste breve artigo tivemos uma visão bastante breve dos arquivos de um plugin que continuará nos próximos dias.

Dica para desenvolvedores: Cache

April 2, 2009 por Kaléu Caminha   Comentários (0)

, , , , , ,

Comecei a desenvolver Plugins com o Elgg e sempre que tentava atualizar o CSS nada acontecia. E o mesmo ocorria com todas as views que eu tentava utilizar.

Fiquei um tempão quebrando a cabeça até descobrir que o Elgg usa um sistema de Cache, que, para alterar qualquer view, css ou js é preciso habilitar ou desabilitar algum plugin.!

Para resolver é só ir em Administração -> Administração do site e desmarcar a opção "usar cache simples".

Abraços.

Plugins para o Elgg.

March 31, 2009 por Kaléu Caminha   Comentários (0)

,

Neste post quero anotar alguns Plugins que considero excelentes e que estão sendo desenvolvidos pela comunidade do Elgg. Para quem se interessar o site oficial tem uma comunidade e dentro dela o módulo “Themes e Plugins” que todo dia recebe novidades.

Import Contacts (Importar Contatos)
Plugin que importa de sites como o Facebook, MySpace e Gmail sua lista de contatos e os convida para o Elgg.

Kaltura Videos
Plugin simplesmente brilhante. Utiliza a tecnologia da Plataforma Kaltura para a inserção e edição colaborativa de Vídeos. É incrível.! Basicamente com ele você pode inserir vídeos do Youtube, MySpace, do seu oc ou da sua Web can e edita-los, cortando partes e inserindo imagens e áudios.

TidyPics Photo Gallery (Galeria de imagens)
Permite a criação de álbuns de fotos e upload de múltiplas imagens. Também permite comentários nas fotos e criação de álbuns para grupos.

Event Calendar (Calendário de Eventos)
Permite a criação de eventos tanto para usuários como para grupos. Possui exibição dos eventos por dia, semana e mês e também por amigos, todos ou pessoais.

Chat Plugin
Adiciona um módulo de Chat ao Elgg em AJAX. Utiliza como base para o Chat o software PhpFreeChat. Obs. Para funcionar é necessário antes, ir no mesmo local aonde você habilitou o plugin, clicar em “Settings”, definir as opções e depois em “save”.

Classifields Plugin (plugin de classificados)
Permite a criação de um número ilimtado de classificados com opção de inserir uma ima imagem ao anúncio. Você pode ver os classificados dos seus amigos, de todos ou apenas os seus, todos podem também ser abertos a comentários. O administrador também pode criar categorias gerais para classificação dos anúncios.

Online Users (Usuários On-line)
Apesar de simples esse plugin pode ajudar a criar mais relacionamentos no site. Ele cria um widget que pode ser adicionado ao seu dashboard com os usuários online no momento.

Concluindo..

A comunidade do Elgg tem crescido de forma incrível. Tenho acompanhado seu avanço e desde o lançamento da versão 1.5, há puquíssimo tempo surgiram muitos plugins.! Muito material interessante pra gente. Vale a pena ir conferir..