terça-feira, 16 de junho de 2009

Lançado novo diretório de recursos no Joomla.org

Para alegria dos desenvolvedores e comunidade Joomla, que já atingiu desde 2005 até agora 10 milhões de downloads, consolidando o Joomla como um dos CMS mais populares do mercado, a equipe Joomla abriu um espaço para freelancers, empresas desenvolvedoras e trabalhadores Joomla mostrarem seu espaço! ;)

Segue abaixo, tradução do anúncio feito pela equipe dia 13 de junho em http://www.joomla.org/announcements/general-news/5238-joomla-resources-directory-launched.html

Em resposta ao interesse esmagador e pedidos da comunidade Joomla, o Projeto Joomla está feliz em anunciar que o Diretório de Recursos Joomla vai online hoje em resources.joomla.org . Se você é um usuário Joomla, não há maneira mais fácil de achar desenvolvedores, provedores de serviços e outros recursos de valor.

"Nós acreditamos que esta será a grande maneira de conectar usuários-finais e provedores de serviços na Comunidade Joomla," disse Wendy Robinson da equipe JRD. "A maioria das pequenas empresas não podem arcar em anunciar no site Joomla.org e isto os dará a chance de se expor. Com perto de um milhão de visitantes e 14 milhões de visualização de páginas por mês, o JED (o diretório de extensões) tem provado que há um amplo interesse em produtos relacionados ao Joomla. "

O JRD (o diretório de recursos) é contruído no sucesso do JED - o lugar mais popular para achar extensões Joomla. Ambos são disponibilizados através do Mosets Tree 2.1 extensão de diretório, uma extensão GPL que também alimenta o Joomla Site Showcase.

Se você provém serviços, alistar-se no diretório de recursos é sem custos (Lista premium será oferecido no futuro com um custo). Isto inclui consultores, designers de templates, sites de tutorial, e também qualquer outro serviço Joomla. Usuários podem postar análises destes serviços e dividir sua experiência com a comunidade.
--------------------------------------------------------------
Adorei a novidade, a comunidade agora pode unir desenvolvedores com os usuários final e mais uma vez, a comunidade Joomla ficou mais unida e mais forte!

*Correndo para me alistar*

Beijos Galera

sexta-feira, 12 de junho de 2009

Introdução ao desenvolvimento de Componentes para Joomla 1.5

Bom gente, apesar de ainda não programar muito bem, estou aprendendo a programar php direto no Joomla. Em homenagem aos meus alunos Hugo, Sílvio e Rafael e outros que se interessam a começar a desenvolver para Joomla que crio este post.

Para seguir este tutorial, eu assumo que você conheça o Joomla, php e mySQL.

Preparando o nosso componente (básico)

Para desenvolver componentes, é necessário fazer três coisas, uma é preparar as pastas e os arquivos php que receberão a programação, dizer ao Joomla, no seu BD que seu componente existe e por fim, programar
  • Crie um folder na pasta components chamado com_seucomponente. Crie em administrator/components uma pasta com o mesmo nome.
Um componente tem área administrativa e comportamentos no front-end, então, preste atenção na hora de criar arquivos para não confundir aonde os mesmos devem ser colocados. O nome do seu componente não deve conter espaços. O Joomla quando for executar seu componente, ele vai buscar um arquivo php com o mesmo nome da pasta (tirando o com_) que irá se comportar como o index do seu componente
  • Crie um arquivo chamado seucomponente.php em components/com_seucomponente e dentro cole a seguinte linha de código
<?php
defined( '_JEXEC' ) or die( 'Restricted access' ); //Este código diz que esse componente só
//poderá ser executado pelo Joomla e é a primeira preocupação com segurança que se tem.
echo '<div class="componentheading">Meu Primeiro Componente</div>';
?>

Dica: Ao invés deste echo simples você poderia utilizar <?php echo JText::_( ‘Meu Primeiro Componente’); ?> esta tag JText diz que é um texto do Joomla, onde, se houver algum componente tradutor para outra língua, este texto será automaticamente traduzido, e ficaria "My first Component", caso fosse trauzido para inglês.

Se você digitar http://localhost/joomla/index.php?option=com_seucomponent no seu navegador, você já verá seu código em ação.

agora na pasta administrator/components/com_seucomponent crie um arquivo chamado admin.seucomponent.php e adicione o seguinte código

<?php
defined( '_JEXEC' ) or die( 'Restricted access' );
echo 'Meu Componente, administrador';
?>

digite no seu navegador http://localhost/joomla/administrator/index.php?option=com_seucomponent

Note que você já pode entrar através da url no seu componente, mas ainda pode ser melhorado. Vamos registrar a existência deste componente no back-end do Joomla, para que possamos criar link para ele nos menus do front-end e para que possamos acessar sua área administrativa no back-end, caso seja criado.

O prefixo das tabelas do Joomla são por padrão _jos, se a sua for diferente, mude nas suas tabelas o seguinte

INSERT INTO jos_components (name, link, admin_menu_link,
admin_menu_alt, 'option', admin_menu_img, params)
VALUES ('Meu Componente', 'option=com_seucomponent',
'option=com_seucomponent', 'Admin do Componente', 'com_seucomponent',
'js/ThemeOffice/component.png', '');




Você pode fazer da forma abaixo caso utilize algo como phpmyadmin



Agora logue na sua área administrativa e em Components veja que seu componente já aparece. Mas não é tudo, você pode criar link para ele na área de menu. =) Você agora está preparado para criar seu componente, como você faria caso não esteja programando para Joomla, basta ir em components/com_seucomponent/seucomponent.php e começar a preparar o que será exibido ao visitante do seu site!

O que eu gosto do Joomla, é que você está livre para abrir conexões externas com outro banco, chamar novos arquivos, integrar com o banco do Joomla, enfim. Uma vez preparado o componente, você pode fazer o que quiser com ele!

Este post foi somente para dar uma noção de como criar coisas para Joomla, ainda há muito a ser feito, como criar o xml, criar a área administrativa e etc. Na medida que eu mesma for aprendendo mais, vou compartilhando o conhecimento com vocês

Leituras recomendadas:

Learning Joomla! 1.5 - Extension Development
Creating Modules, Components, and Plug-Ins with PHP
Joseph LeBlanc <--- Melhor para iniciantes (este tutorial foi baseado nele)
e
Professional Joomla!
Dan Rahmel <--- Esse cara é muito, muito bom! Um pouco prolixo demais, então recomendo o Joseph para começar Infelizmente, ambos os livros estão em inglês, mas como digo para meus alunos... "É necessidade do profissional da área de TI ter o conhecimento no mínimo do inglês técnico. Acontece que para um livro ser traduzido, tem que ter demanda de leitores, a maior demanda estão entre os que querem iniciar naquela área, à medida que vão se especializando, as pessoas vão desistindo, parando de procurar, logo a demanda cai e assim, há menos prospectos de venda e então, os ótimos livros (nível intermediário, avançado)em sua maioria não chegam a ser traduzidos, a não ser a tecnologia a ser traduzida seja REALMENTE popular, o que não é o caso do Joomla, ainda". Pessoal, have fun!

sexta-feira, 5 de junho de 2009

Trabalho em equipe é com Joomla! =D

Olá pessoal, este post nasceu de uma conversa que estava tendo com meus alunos de Joomla aqui em Recife.

Além de todas as vantagens de ser um CMS, o Joomla serve também para nos instruir como se trabalhar em equipe. É muito lindo como uma equipe Joomla consegue trabalhar... Uma equipe em Joomla pode trabalhar ao mesmo tempo, online, sem interferir no trabalho um do outro!
Vamos supor a seguinte situação: Você conseguiu um novo cliente que quer um site em Joomla. Ele será o gestor, você o designer e há também um programador que desenvolverá umas extensões pra Joomla. Primeiro de tudo, você tem duas opções: Trabalhar offline com o programador e demorar tipo um mês para botar o site no ar, ou você pode trabalhar em equipe e no mesmo dia, o site do cliente estar no ar e você ir fazendo as melhorias por trás dos bastidores!

Essa é minha metodologia de trabalho em Joomla. Quando um cliente me pede um site em Joomla, a primeira coisa é achar um template pronto mesmo que pareça +- com a estrutura de layout que ele pediu, modifico as cores, ponho a logomarca,aviso a ele que será construído o layout de acordo com o que decidirmos, mas que para agilizar a vida, vou colocar um layout quebra-galho, geralmente ele concorda, se não, faça offline mesmo e avise que o site dele vai ficar fora do ar por X dias, até você criar seu template. Site no ar, crie um usuário do tipo publisher, para o cliente e prepare as seções e categorias dos artigos de acordo com a necessidade do cliente. Instale as extensões que seja possível de se instalar e deixe o gestor fazer a parte dele: Gerenciar o conteúdo. Agora entre você e o programador...

Muito simples! Defina com ele algumas classes e semântica utilizada no código que ele vai criar. Tipo, "Ó, no título, bota h1, nos campos do form bota sempre formCliente01" besteiras assim... Ele vai preparar o Joomla para receber a extensão (é rápido de fazer) e quando isso acontecer, crie um link com permissão para usuários "Special" e avise ao cliente que ele pode verificar o andamento do processo do template e da extensão quando ele quiser, é só clicar neste link! enquanto o design está sendo preparado o programador vai fazendo a parte dele! A vantagem, é que se o cliente visualizar a extensão sendo produzida, ele vai ver as etapas do processo, modificar o que tiver de ser modificado nos planos de vocês antes do produto final estar pronto!!!

Esse conceito de trabalho em equipe eu aprendi no curso de Scrum que eu fiz na Especializa... Parabéns a Luciano Félix pelo grande curso que ele ministra!

Bom gente, é isso! Espero ter aberto a mente de vocês um pouco hoje

quarta-feira, 3 de junho de 2009

Joomla CSS padrão explicado

É com muito prazer que publico o post de hoje. Como havia prometido (desculpem a demora), o CSS core do Joomla explicado, ainda há algumas áreas em branco que eu não consegui modificar, tipo, eu encontrava no código mas não conseguia aplicar o CSS para eles. Alguns, tem uma espécie de "bug", os que consegui desvendar, estão descritos.

Tem a lista dos CSS generalizados, ou seja, que pertencem a vários componentes e módulos, se você modificar para um deles, modifica para todos. Como resolver isso? Simples! Você pode atribuir valores nos módulos e menus na parte Alguma coisa "class suffix” que fica ao lado direito da área de parâmetros de módulos e menus, assim, essas tags generalizadas aplicadas em um módulo. Por exemplo, é adicionada apenas no módulo ao qual ela pertence, por exemplo, se no adiciono em um módulo o suffix _Jenn, naquele módulo, o css “table.moduletable” passaria a se chamar “table.moduletable_Jenn”, a gente pode utilizar também um artifício que é o de adicionar um espaço antes do nome e ter então, nosso módulo atenderia duas classes. Ex: aplicando “ Jenn”, no lugar de _Jenn, nosso css seria:
Isso significa que além de o padrão CSS definido para “table.moduletable” seria atribuído também os valores instituídos para a classe .Jenn

Eu peguei a lista completa com classes, separadas por documento em:
http://joomlatp.com/joomla-css/joomla-1.5-default-CSS-classes-list.html

Tentei manter esta estrutura que eles utilizaram, mas os que eram CSS generalizados passei para "Generalizados" aí, algumas partes desta estrutura sumiram, pode ser que alguns generalizados estejam perdidos dentre as tags...

Algumas coisas da lista original não estavam nela, mas era besteira,esta lista está bem completa e com certeza melhor organizada que a minha, se alguém conseguir modificar alguma das que não estão descritas dentro do meu pdf, favor me avisar, que se completarmos, lanço novamente esta lista, citando a contribuição de cada um.

Senha: jennifer-payne.blogspot.com
http://www.4shared.com/get/109591741/a5438630/Joomla_CSS.html