Programador & consultor focado em Web Standards .::. Joomla!, PHP, Javascript, UI/UX


Navegação principal

  • Início
  • Sobre o Autor
  • Consultoria
  • Cursos & Treinamentos
  • Contato

Alguns tópicos gerais

  • Comunidade Software Livre
  • Frontend (HTML, CSS, JS)
  • Ferramentas
  • Joomla®
  • Padrões
  • Off-topic
  • UI/UX

Sobre o autor

Emerson Rocha Luiz

Emerson Rocha Luiz, 27 anos, residente de Porto Alegre, é um Web Developer com 8 anos de experiência.

Além de ativo na comunidade de software livre, costuma ser flexível ao prover consultoria para outros desenvolvedores em áreas que domina.

É sócio-fundador na Alligo, que atende projetos robustos desde o planejamento até o suporte.

Últimos artigos escritos por Emerson

Diferença entre um JOOMLEIRO e um 'fazedor de site Joomla' - Desabafo

Tem pessoas que não entendem a não tão sutil diferença entre um JOOMLEIRO e um cara que 'fazedor de sites joomla'. A quantidade de usuários Joomla não so no Brasil como no mundo cresceu absurdamente, e hoje Joomla é o CMS mais usado no mundo. Se tornou 'pop' saber usar joomla, e muito provavelmente, amenos que uma pessoa queira fazer só um blog, ela vai pelo menos pensar em usar Joomla em um projeto novo. Mas, e a comunidade cresceu? Eu diria: não tanto assim.

Da mesma forma que boas pessoas vieram para o lado Joomla da força, muitos, mas muitas pessoas sem qualquer comprometimento ou mesmo mau caráter passaram a usar Joomla. Vou especificar.

JOOMLEIRO

JOOMLEIRO é o cara que usa Joomla e contribui, ou por paixão ou acreditar que deve retribuir idéias que lhe fizeram melhorar, ou ambos. JOOMLEIRO é aquele cara que descobriu o CMS Joomla, está visitando um fórum e, mesmo se souber pouco de Joomla, vai ao menos tentar ajudar uma outra pessoa que não sabe algum detalhe. JOOMLEIRO é o cara que a acredita que colaborar para um grupo de usuários local é uma ideia legal, e realmente apoiaria isso. É o cara que a menos que realmente o mundo tenha desabado e realmente não tenha como ir, não vai deixar de ir em eventos Joomla. Um JOOMLEIRO, é o cara que se sabe desenvolver extensões e faz isso profissionalmente, VAI liberar parte dos seus códigos ou mesmo fazer extensões gratuitas pra todo o resto da comunidade usar, porque ele acha isso importante. JOOMLEIRO é o cara que quando vê que algo sai errado com Joomla, vai procurar saber o porque, vai ir atrás da fonte ou mesmo reportar erros, em vez de berrar aos quatro ventos 'como o CMS é ruim (pra mim)'. Um JOOMLEIRO pode não ser um programador, mas nem por isso deixa de liberar ao menos as traduções de extensões Joomla que ele faz.

Como indentificar um Joomleiro

  • Usa Joomla porque gosta.
  • Ele tem um blog ou um espaço não comercial para falar bem de Joomla. E o Blog dele é em Joomla.
  • Não gosta de usar templates comerciais de clubes, e se sente desconfortável ao fazer isso.
  • É contra pirataria dentro do Joomla (de template e extensões) e realmente não tolera usuários que divulgam esse tipo de coisa.
  • Contribui ativamente para alguns dos sites Joomla de referência no Brasil como o joomla.com.br, joomlaclube.com.br, e outros sites de Joomla regionais: joomlamazonia.com.br, joomlabahia.org, joomlaminas.org, joomlabrasilia.com.br e joomlarj.com.br.
  • Participa de fórums/lista de email (para trocar ajudas).
  • Pensa bem antes de assumir um compromissos. Não promete o que não consegue cumprir. Tem uma visão mais ampla. Trata serviços com responsabilidade e seus clientes como 'colegas', fazendo-os estar por dentro do que planeja para o projeto.
  • Embora o Joomla seja de graça, investe tempo no CMS ou no suporte e divulgação gatuita ao CMS, e considera isso no calculo ao cobrar de clientes, pois experiência e responsabilidade social também tem preço.

'Fazedor de sites Joomla'

Ja o 'fazedor de sites joomla' tem como principal caracteristica ver SEMPRE outros usuários Joomla como concorrentes, logo, em um mundo capitalista, ele jamais deve ajudar um concorrente. É o tipo de cara que tem a mente tão restrita que acha realmente que se ele se ele conseguiu aprender Joomla muito rápido porque JOOMLEIROS o ajudaram, é um risco pessoas novas aprenderem e ocuparem o mercado de trabalho que o 'fazedor de sites joomla' está sofrendo para dividir. Alguns desses usuários, beiram ao extremo em chegar em fórum e EXIGIR que um JOOMLEIRO o ajude, caso contrário o 'fazedor de sites joomla' vai achar que a comunidade é uma merda e não serve pra nada, pois JOOMLEIROS estão ali pra dar suporte imediato e gratuito a qualquer pessoa por serem obrigados a isso. 'Cara que faz sites em Joomla' não é necessariamente um usuário novo ou sem experiência, mas alguém que tem condições de colaborar e não o faz de propósito, ou que SEMPRE se defende em falta de tempo ou de oportunidade, de modo que faça parecer que JOOMLEIROS são uns desocupados perto dos profissionais 'fazedor de sites joomla'. Este tipo de pessoa, não divulga o Joomla porque gosta, mas porque precisa. Se pudesse, tiraria do código fonte todas as referencias de Joomla e colocaria um nome SistemaDaMinhaEmpresa. Não só isso, em seu site, os unicos tutoriais sobre Joomla que teria seriam voltados basicamente para otimizar o site para o google, e, com sorte, conseguir mais clientes. Grupo de usuários? Não, um 'fazedor de sites joomla' não iria em um grupo e JAMAIS ajudaria a criar um ou na manutenção complexa de um evento desses, e no máximo iria caso descobrisse que em encontro de usuários as chances são muito boas de ter bons contatos e conseguir mais 'jobs' e mais dinheiro.

Como identificar um 'cara que faz sites em Joomla'

  • Usa Joomla porque ele é util.
  • Ele tem um site 'profissional' (comercial) em Joomla usando um template fodastico comercial e pago (se é que pagou) por algum outro desenvolvedor, e lhe mostra uma página sobre 'como Joomla é facil de usar' estilo faça-você-mesmo, e todo o conteúdo só tem objetivo comercial.
  • Não se importa de usar templates Joomla de clubes comerciais, e nem perderia tempo aprendendo fazer suas próprias (por clara falta de capacidade em fazer algo bom) ou conseguindo parcerias para fazer templates unicas. Os mais caras de pau vão ter até um texto em seus sites comerciais estimulando você a aceitar templates desse tipo.
  • Não ve um problema em pessoas que pirateiam templates ou extensões Joomla; pode até trocar links em comunidades que toleram isso.
  • Ele em vez de colaborar com sites que estão desde o início dando suporte ao usuário, cria comunidades-de-um-homem-só sem falar com ninguém previamente, e entope de links e banners para seu site 'profissional' vendendo serviços, porque sites de comunidade sempre tem boa visitação e seria bom por causa do google.
  • Participa de fórums/lista de email (para pedir ajuda ou divulgar seus serviços comerciais).
  • Assume qualquer compromisso e depois vai procurar se tem uma extensão pronta pra isso. Se não tiver usa uma que faz parcialmente o serviço e avisa na hora da entrega que 'houve modificações na promessa original'.
  • Não se importa de prostituir cobrando um preço abaixo da média, porque se importa com os outros usuários e não precisa levar em consideração o tempo que não dedicou ajudando pessoas ou o CMS crescer (CMS custo zero mesmo).

Empresas JOOMLEIRAS e as que só são 'fazedoras de sites Joomla'

Uma empresa JOMMLEIRA tem JOOMLEIROS, não 'cara que faz sites em Joomla'. Ela colabora e incentiva que seus empregados colaborem com o projeto, quer seja prevendo suporte em fórums para novos usuários, desenvolvedo extensões livres e ajudando a comunidade com conhecimento ou mesmo em especial colaborando com ideias e pachs para o core Joomla em lista de desenvolvedores. É uma empresa que paga ou pelo menos liberda de folga os JOOMLEIROS para eles irem em encontros de usuários e até falar bem dela porque ela é uma empresa JOOMLEIRA. É uma empresa que patrocina eventos Joomla porque esse é um modo de retribuir. Em resumo, é uma empresa que merece ter um futuro, porque, em se tratando de internet, uma empresa que usa Joomla em seus sites, tem uma responsabilidade 'social' em contribuir para o Projeto Joomla. Empresas JOOMLEIRAS é aquela que dá uma importancia muito significativa ao contratar alguém em saber o que ele já fez pela comunidade, e não somente ficar preso aos X anos de experiência em tal empresa anterior, e sabem que um profissional que de boa vontade ajuda pessoas aleatórias sem ganhar nada por isso, tem MUITO mais chances de ser uma boa pessoa para trabalhar em equipe, e certamente tem muito mais gente por trás dele, que o vai dar suporte porque conhece o passado dele, ajudar a resolver de forma rápida qualquer problema que vier a surgir em sua empresa.

Como identificar uma empresa JOOMLEIRA

  • Ela diz: sim, eu uso Joomla, e me orgulho disso.
  • Ela patrocina eventos Joomla, nacionais ou regionais.
  • Ela patrocina ou apoia ativamente comunidades regionais ou nacional de usuário, e os respectivos sites.
  • Ela da folga aos usuários quando esses tem ir fisicamente a eventos Joomla, sem obrigar a compensar essas horas ou descontar elas.
  • Ela paga o deslogamento e/ou inscrição em eventos Joomla de seus funcionários
  • Se for viável para empresa, ela procura dedicar horas do trabalho dos JOOMLEIROS dela ao projeto JOOMLA.
  • Ela não só tolera como aceita e estimula que seus funcionários liberem parte do seu conhecimento para comunidade, quer seja em conversas, quer seja na produção de extensões gratúitas.
  • Ela escolhe novos funcionarios somente se eles forem JOOMLEIROS, e exclui pessoas que só estão ali pelo dinheiro, sem amor a camisa.

Enfim

Se você veio por essa página através de um link qualquer porque alguém te considerou um JOOMLEIRO, sinta-se estimulado a continuar porque você é importante para comunidade, e são de pessoas responsáveis como você que o Joomla precisa. Se por outro lado veio até aqui porque alguém te considera somente um 'Cara que faz sites em Joomla' tente entender o porque, ou mesmo tome como uma crítica construtiva e passe a melhorar a comunidade Joomla. Você é o que você faz, e nunca é tarde para mudar.

Veja comentários externos relacionados a este

Serei Joomleiro - Via @dayvisonsantos

Twitte-me para incluir você aqui

 

P.S.: Este texto específico pode ser copiado ou adaptado sem necessidade de permissão previa desde autor e distribuido. Sinta-se livre para copiar ou linkar este texto de qualquer outro site, ou mesmo procurar divulgar outros textos ou estimular uma comunidade mais participativa, e uma valorização de pessoas que colaboram. No caso de divulgação no twitter, o link direto para o post (sem marcar um subtópico específico) é http://is.gd/5bjro, e para #joomleiro é http://is.gd/5bjB1, #fazedor-de-site http://is.gd/5bjPV e #empresa-joomleira http://is.gd/5bjSL. Ajude a conscientizar pessoas!

IFs - Condicionais muito úteis em desenvolvimento Joomla

Esta lista ainda não é definitiva. Resolvi publicar ela mesmo não tendo muito conteúdo por já estar adiando a tempos isso. Caso você tenha sugestões, ou tenha dúvida de algum IF que possa ser util para você, pode entrar em contato ou deixar um comentário no final desta página.

Prefácio - O que saber antes de começar

Em primeiro lugar, você deve ter em mente que um if de PHP pode ser organizado de diversas formas, inclusive usando as condicionais se verdadeiras ou falsas em outros casos. Tome esta página como conhecimento para algumas dúvidas comuns no dia-a-dia de um programador de extensões ou em um desenvolvedor de templates. E lembre-se que você pode fazer sugestões.

"If tipo 1" - Grandes Blocos de HTML (templates e afins)

Se você é designer, certamente vai usar muito esse tipo.

<?php if (CONDICAO) : ?>
 <!--Olá! :D Eu sou um HTML feliz -->
 <!--Caso a CONDICAO seja verdadeira, eu aparecerei na página! -->
 <jdoc:include type="modules" name="top" style="beezDivision" headerLevel="3" />
 <?php endif; ?>

"If tipo 2.1" - Melhor quando trabalha com PHP e pouco HTML

<?php if (CONDICAO) {
   echo JText::_('Oi! A condição é verdadeira!\');
   }?>

"If tipo 2.2" - Melhor quando trabalha com PHP e pouco HTML

<?php if (CONDICAO1) {
   echo JText::_('Oi! A CONDICAO1 é verdadeira!');
   } elseif (CONDICAO2) {necho JText::_('Oi! A CONDICAO1 é falsa! Mas a CONDICAO2 verdadeira!');
   } else {
   necho JText::_('Oi! A CONDICAO1 e CONDICAO2 São Falsas!');
   }?>

Dica: de como especificar apenas excessões!

Neste caso é simples. em todas as condicionais que você quiser dizer o contrário, basta adicionar exclamação (!) antes da condição:

 if (!CONDICAO) {
     echo JText::_('Minha condição NÂO é verdadeira!');
   }

Determinar se é frontend ou backend

 $app = JFactory::getApplication();
 if ($app->isAdmin()) {
     echo JText::_('Estou na área administrativa do Joomla!');
 } else {
     echo JText::_('Não estou na área administrativa do Joomla!');
 }

Exemplo: Retornar URL base independente de ser frontend ou backend

Se você não sabe, o modo de como retornar a URL base do Joomla é diferente no frontend do backend. O código mais curto para evitar ter que pensar muito ou mesmo usar um mesmo arquivo nas duas áreas é o seguinte.

 $app = JFactory::getApplication();
 $live_site = $app->isAdmin() ? $app->getSiteURL() : JURI::base();
Obrigado ao Chris Davenport pela idéia simples e prática.

Determinar se é a página inicial (frontpage do site)

Baseado na documentação oficial How to determine if the user is viewing the front page.

<?php
// Para conteúdos que possuem a mesma linguagem
$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault()) {
    echo JText::_('Voce esta vendo a pagina inicial do site')
}
?>
<?php
// Para conteúdos de idiomas diferentes
$app = JFactory::getApplication();
$menu = $app->getMenu();
if ($menu->getActive() == $menu->getDefault( 'en-GB' )) {
    echo 'This is the front page';
}
elseif ($menu->getActive() == $menu->getDefault( 'pt-BR' )) {
    echo 'Página inicial';
}
?>
<?php
// Este código abaixo funcionava até a versão 1.5, e era a recomendação. 
// Se tiver que atualizar extensões, converta seu código antigo para os acima
$menu = JSite::getMenu();
if ($menu->getActive() == $menu->getDefault()) {
        echo JText::_('Voce esta vendo a pagina inicial do site');
}
?>

Determinar se é a página especifica

Baseado no post do nailson_imgn.

<?php
$paginaatual = JURI::current();
if( $paginaAtual == 'link/da/pagina/de/noticias.html' ){
   echo JText::_('Voce esta vendo a página link/da/pagina/de/noticias.html desde site');
}
?>

Determinar se é um componente específico (option)

 $option = JRequest::GetWord('option'); //com_content, com_user, com_contact...
 if ($option == 'com_content') {
     echo JText::_('Esta página é do componente com_content ');
 }

Determinar se é uma view especifica (view)

 $view = JRequest::GetWord('view'); //frontpage, default, form, ...
 if ($view == 'frontpage') {
     echo JText::_('Esta página é exibida com a view frontpage');
 }

Determinar se é um formato específico (format)

 $format = JRequest::GetWord('format'); //html, pdf, raw,...
  if ($format == 'html') {
      echo JText::_('Esta página é exibida com o format html');
  }

Determinar se é uma página especifica (Itemid)

 $ItemId = JRequest::GetInt('Itemid'); //Numero do artigo
  if ($ItemId == '27') {
      echo JText::_('Esta página é especifica do menu de ID 27');
 }

Obrigado ao Fernando Nunes e até ao João Amado Alves da Rosa. Demorei 5 (!) meses, mas atualizei aqui. A antes estava menu do artigo, e não do menu, como é o correto

Determinar se é visitante ou usuário logado

 $user = JFactory::getUser();
 if ( $user->get('guest') ) { //$user->get('guest') retorna '1' caso seja visitante
      echo JText::_('Você é um visitante!');
 } else {
      echo JText::_('Você é um usuario autenticado!');
 }

Exemplo: Exibir posição de módulo apenas para visitantes

<?php
$user = JFactory::getUser();
if ($user->get('guest')) : ?>
<!--HTML aqui dentro -->
<jdoc:include type="modules" name="top" style="beezDivision" headerLevel="3" />
<?php endif; ?>

Determinar se é um tipo de usuário

Dois parametros podem ser usados do JUser neste caso: grid e usertype. Grid é o equivalente numérico do usertype ao qual você já deve estar acostumado, e o usertipe é o nome com o qual o grupo do usuário é salvo no banco de dados

Visite Accessing the current user object

 $user = JFactory::getUser();
     if ( $user->get('usertype') == 'Super Administrator') { //Super Administrator, Administrator, Manager...
      echo JText::_('Você é um Super Administrador do sistema!');
 }

Determinar se é um usuário específico

Neste exemplo, ao usar somente o '$user = JFactory::getUser()' estamos carregando o usuário atualmente logado no sistema. Se por exemplo quer pegar os dados de qualquer usuário específico, independente de quem esteja logado no sistema, deve especificar o id do respectivo usuáio ou o username, no caso $user = JFactory::getUser(62) / $user = JFactory::getUser('admin') para o administrador padrão do Joomla.

Neste exemplo, vamos pegar somente o usuário atualmente logado e procurar saber se o id dele é igua o id de usuário que queremos. Mas lembre-se que você pode usar qualquer outro dos parâmetros, como username ou nome de usuário

Visite Accessing the current user object

 $user = JFactory::getUser();
     if ( $user->get('id') == '62') { //Super Administrator, Administrator, Manager...
      echo JText::_('Você é especificamente o usuário que estou procurando!');
 }

Determinar se o modo de debug está ligado

Quando estiver desenvolvendo uma extensão, é comum usar certos códigos para ver como as coisas estão indo. Não obstante, ao entregar para o cliente final ficar apagando, ou com sorte só comentando, pode encomodar um pouco, em especial se o projeto em questão não foi 'finalizado para todo o sempre' ou mesmo ainda está em constante desenvolvimento. Neste caso você tem pelo menos duas boas alternativas são voce usar para debugar sua extensão: extender o modo debug padrão do joomla, ou setar sua própria variavel no arquivo principal de sua extensão, fazendo com que o resto do código execute se tal código estiver definido. Neste exemplo, você tem como base como executar um ploco de ações somente quando o Modo debug padrão do Joomla estiver ligado

 if (JDEBUG) { //JDEBUG é uma constante definida pelo sistema com Debug = ON
      echo JText::_('O debug do sistema está on! Posso dar uns print_r() a vontade :D');
 }

Outra dica para quem quer debugar em Joomla é usar o JoomlaFox!

Estados do Brasil - Lista Drop Down

Em vez de fazer do modo tradicional adicionando HTML direto ao seu código, você pode usar o Framework Joomla para gerar a lista drop down com os estados brasileiros, já com opção de tradução para gerenciar os acentos sem problemas. O código abaixo é literalmente um CTRL+C para colocar em suas extensões.

São disponibilizadas duas versões: uma que envia no formulário em formato UF, e outro que salva em numeral de 1 até 27. Mesmo ao ler dados do banco de dados o menu vai compreender o estado certo e exibir qual é para o usuário.

Uma página como essa pode ser especialmente interessante se você acha as coisas mais rápido pelo google do que procurando em códigos já feitos no seu computador. Isso se conseguir achar no seu computador.

Array Estados do Brasil, Valor enviado tipo UF

<?
//Estados do Brasil, Value UF
//http://www.fititnt.org/codigo/joomla/estados-do-brasil.html
$estadodobrasil = array();
$estadodobrasil[] = JHTML::_('select.option', '', JText::_('- Selecione o Estado -'));
$estadodobrasil[] = JHTML::_('select.option', 'AC', JText::_('UF_AC'));
$estadodobrasil[] = JHTML::_('select.option', 'AL', JText::_('UF_AL'));
$estadodobrasil[] = JHTML::_('select.option', 'AP', JText::_('UF_AP'));
$estadodobrasil[] = JHTML::_('select.option', 'AM', JText::_('UF_AM'));
$estadodobrasil[] = JHTML::_('select.option', 'BA', JText::_('UF_BA'));
$estadodobrasil[] = JHTML::_('select.option', 'CE', JText::_('UF_CE'));
$estadodobrasil[] = JHTML::_('select.option', 'DF', JText::_('UF_DF'));
$estadodobrasil[] = JHTML::_('select.option', 'ES', JText::_('UF_ES'));
$estadodobrasil[] = JHTML::_('select.option', 'GO', JText::_('UF_GO'));
$estadodobrasil[] = JHTML::_('select.option', 'MA', JText::_('UF_MA'));
$estadodobrasil[] = JHTML::_('select.option', 'MT', JText::_('UF_MT'));
$estadodobrasil[] = JHTML::_('select.option', 'MS', JText::_('UF_MS'));
$estadodobrasil[] = JHTML::_('select.option', 'MG', JText::_('UF_MG'));
$estadodobrasil[] = JHTML::_('select.option', 'PA', JText::_('UF_PA'));
$estadodobrasil[] = JHTML::_('select.option', 'PB', JText::_('UF_PB'));
$estadodobrasil[] = JHTML::_('select.option', 'PR', JText::_('UF_PR'));
$estadodobrasil[] = JHTML::_('select.option', 'PE', JText::_('UF_PE'));
$estadodobrasil[] = JHTML::_('select.option', 'PI', JText::_('UF_PI'));
$estadodobrasil[] = JHTML::_('select.option', 'RJ', JText::_('UF_RJ'));
$estadodobrasil[] = JHTML::_('select.option', 'RN', JText::_('UF_RN'));
$estadodobrasil[] = JHTML::_('select.option', 'RS', JText::_('UF_RS'));
$estadodobrasil[] = JHTML::_('select.option', 'RO', JText::_('UF_RO'));
$estadodobrasil[] = JHTML::_('select.option', 'RR', JText::_('UF_RR'));
$estadodobrasil[] = JHTML::_('select.option', 'SC', JText::_('UF_SC'));
$estadodobrasil[] = JHTML::_('select.option', 'SP', JText::_('UF_SP'));
$estadodobrasil[] = JHTML::_('select.option', 'SE', JText::_('UF_SE'));
$estadodobrasil[] = JHTML::_('select.option', 'TO', JText::_('UF_TO'));
?>

Array Estados do Brasil, Valor enviado tipo número

<?
//Estados do Brasil, Value 1~27
//http://www.fititnt.org/codigo/joomla/estados-do-brasil.html
$estadodobrasil = array();
$estadodobrasil[] = JHTML::_('select.option', '', JText::_('- Selecione o Estado -'));
$estadodobrasil[] = JHTML::_('select.option', '1', JText::_('UF_AC'));
$estadodobrasil[] = JHTML::_('select.option', '2', JText::_('UF_AL'));
$estadodobrasil[] = JHTML::_('select.option', '3', JText::_('UF_AP'));
$estadodobrasil[] = JHTML::_('select.option', '4', JText::_('UF_AM'));
$estadodobrasil[] = JHTML::_('select.option', '5', JText::_('UF_BA'));
$estadodobrasil[] = JHTML::_('select.option', '6', JText::_('UF_CE'));
$estadodobrasil[] = JHTML::_('select.option', '7', JText::_('UF_DF'));
$estadodobrasil[] = JHTML::_('select.option', '8', JText::_('UF_ES'));
$estadodobrasil[] = JHTML::_('select.option', '9', JText::_('UF_GO'));
$estadodobrasil[] = JHTML::_('select.option', '10', JText::_('UF_MA'));
$estadodobrasil[] = JHTML::_('select.option', '11', JText::_('UF_MT'));
$estadodobrasil[] = JHTML::_('select.option', '12', JText::_('UF_MS'));
$estadodobrasil[] = JHTML::_('select.option', '13', JText::_('UF_MG'));
$estadodobrasil[] = JHTML::_('select.option', '14', JText::_('UF_PA'));
$estadodobrasil[] = JHTML::_('select.option', '15', JText::_('UF_PB'));
$estadodobrasil[] = JHTML::_('select.option', '16', JText::_('UF_PR'));
$estadodobrasil[] = JHTML::_('select.option', '17', JText::_('UF_PE'));
$estadodobrasil[] = JHTML::_('select.option', '18', JText::_('UF_PI'));
$estadodobrasil[] = JHTML::_('select.option', '19', JText::_('UF_RJ'));
$estadodobrasil[] = JHTML::_('select.option', '20', JText::_('UF_RN'));
$estadodobrasil[] = JHTML::_('select.option', '21', JText::_('UF_RS'));
$estadodobrasil[] = JHTML::_('select.option', '22', JText::_('UF_RO'));
$estadodobrasil[] = JHTML::_('select.option', '23', JText::_('UF_RR'));
$estadodobrasil[] = JHTML::_('select.option', '24', JText::_('UF_SC'));
$estadodobrasil[] = JHTML::_('select.option', '25', JText::_('UF_SP'));
$estadodobrasil[] = JHTML::_('select.option', '26', JText::_('UF_SE'));
$estadodobrasil[] = JHTML::_('select.option', '27', JText::_('UF_TO'));
?>

Estados do Brasil - Lista Drop Down

Este é o código que Joomla que, efetivamente, gera a lista baseada no array informado anteriormente. Coloque aonde gostaria que a lista fosse exibida na sua página. Altere os campos conforme o seu caso.

<?php echo JHTML::_('select.genericlist', $estadodobrasil, 'estado','class="inputbox"', 'value' , 'text', $this->item->estado, ''); ?>

Tradução da lista drop down de Estados do Brasil

O código abaixo deve ser colocado no seu respectivo arquivo de tradução.
## Tradução de Estados do Brasil:
## http://www.fititnt.org/codigo/joomla/estados-do-brasil.html
- Selecione o Estado -=- Selecione o Estado -
UF_AC=Acre
UF_AL=Alagoas
UF_AP=Amapá
UF_AM=Amazonas
UF_BA=Bahia
UF_CE=Ceará
UF_DF=Distrito Federal
UF_ES=Espírito Santo
UF_GO=Goiás
UF_MA=Maranhão
UF_MT=Mato Grosso
UF_MS=Mato Grosso do Sul
UF_MG=Minas Gerais
UF_PA=Pará
UF_PB=Paraíba
UF_PR=Paraná
UF_PE=Pernambuco
UF_PI=Piauí
UF_RJ=Rio de Janeiro
UF_RN=Rio Grande do Norte
UF_RS=Rio Grande do Sul
UF_RO=Rondônia
UF_SC=Santa Catarina
UF_RR=Roraima
UF_SP=São Paulo
UF_SE=Sergipe
UF_TO=Tocantins

WEDJavascript - Componente para testar Joomla + Mootools (e javascripts)

WEDJavascript é um componente simples com uma view no frontend e uma no backend com algum código que agiliza pequenos testes com javascript. Além disso carrega a biblioteca padrão do Mootools (que no Joomla 1.5 é o Mootools 1.1)
No frontend você também irá ver saida JSON gerada por um Array de PHP, útil ao se trabalhar com AJAX e afins.

Abaixo segue parte do código do componente, cuja versão na hora de escrita deste post é 0.3.0.1. Para checar versões mais recentes, veja o link para download no final do post.

defined('_JEXEC') or die('Access Denied');
$document =& JFactory::getDocument(); // do not delete

############################## INSERT J!MOOTOOLS #############################
//Special tags to include Joomla Default Mootools libraries
JHTML::_( 'behavior.mootools' );//Include Mootools
JHTML::_('behavior.modal'); // Behavior Modal
jimport('joomla.html.pane'); // Jpane: JPane class types include 'Tabs' and 'Sliders'.
JHTML::_('behavior.formvalidation'); //Form Validation
############################## INSERT J!MOOTOOLS #############################

################################# CUSTOM PHP ################################
//Add custom php here.



################################# CUSTOM PHP ################################

############################## INLINE JAVASCRIPT #############################
//Tip: Remember that you can also add {$phpvariable} inside
$javascriptinline = <<<JS
<!-- WEDJavascript: inline javascript start -->
<script type="text/javascript">



</script>
<!-- WEDJavascript: inline javascript end -->
JS;
############################## INLINE JAVASCRIPT #############################


################################# INLINE CSS #################################
//Tip: Remember that you can also add {$phpvariable} inside
$cssinline = <<<CSS
<!-- WEDJavascript: inline css start -->
<style type="text/css">




</style>
<!-- WEDJavascript: inline css end -->
CSS;
################################# INLINE CSS #################################

############################# EXTERNAL JAVASCRIPT ############################

//Add one especific javascript file on html <head> tag
//$document->addScript( '/media/system/js/sample.js' ); //example that add /media/system/js/sample.js to <head> tag

############################# EXTERNAL JAVASCRIPT ############################

//Add the $javascriptinline to the page. Do not need change
$document->addCustomTag($javascriptinline);
$document->addCustomTag($cssinline);
?>

<!-- WEDjavascript frontend start -->
<h2>WEDJavascript - Code for help a bit when testing javascript in Joomla frontend :D</h2>


Tip: don't forget to access <a href="/component/wedjavascript/?view=wedjavascript&format=raw" target="_blank">JSON simple output</a>

More info on <a href="http://www.fititnt.org/wedjavascript.html" target="_blank">WEDJavascript page</a>.

<!-- WEDjavascript frontend end -->
  

WEDJavascript é um componente simples com uma view no frontend e uma no backend com algum código que agiliza pequenos testes com javascript. Além disso carrega a biblioteca padrão do Mootools ( que no Joomla 1.5 é o Mootools 1.1)

No frontend você também irá ver saida JSON gerada por um Array de PHP, útil ao se trabalhar com AJAX e afins.

 

Download do WEDjavascript

Para obter o componente WEDjavascript, acesse a área de download.

Faça também download de componentes relacionados a Javascript + Joomla

Se você quer saber mais sobre como usar Behavior Modal em Joomla, tem um componente feito já com demonstração de implementação. Faça o download do WEDModal

Usuários mentem - Suporte Joomla no mundo real

Está é uma tradução livre do excelente post Users lie - joomla support in the real world do Brian Teeman.

Gregory House é um médico rabugento famoso da TV que é especialista na resolução dos problemas que nenhum outro médico pode.

Fabulosamente ele diz: "Todos os pacientes mentem!"

Claro que o que ele quer realmente quer dizer é que você não deve acreditar totalmente no que o paciente diz sobre sua doença e sitomas, como eles não tem habilidades necessárias para descreveê-los com precisão.

Os pacientes também tem tendência a neglicenciar a sobre fatos que para eles parecem irrelevantes, mas são fundamentais no diagnóstico bem sucedido.
Isso também é verdade para usuários que você dá suporte!
Não acredite no que você não pode ver com seus próprios olhos!

Esta semana eu estive com talves dois dos maiores "mentirosos" no suporte a internet que eu vi em todos os tempos.


Caso 1 - o servidor Web está instalado


Preâmbulo: Eu fui convidado a supervisionar a instalação de um site joomla para uma intranet corporativa de um escritório de clientes. Como o servidor estava atrás de um firewall do governo, não fomos capazes de fazer qualquer coisa remotamente ou verificar se o servidor tivesse sido instalado corretamente. Após inúmeros e-mails e conversas nos foi garantido que o Apache, MySQL e PHP foram todos instalados e funcionando. Então deve ter sido uma instalação muito rápida.

Na chegada: Desculpa, administrador de TI que instalou tudo está de férias hoje, mas o servidor está naquela sala. Eu tenho um monitor e um teclado para você poder ligar no servidor. Porém me desculpe, não tenho uma mesa, mas creio que a mesa do carrinho de chá deva funcionar bem para isto.

Olhando para o servidor: Nenhum diretório htdocs, eu me pergunto onde o Apache foi instalado? Oh! olha lá é um diretório intranet, deve estar lá. Aberto este diretório, adivinhe o que o Apache, MySQL e PHP estão sim todos lá todas, como arquivos de instalação. Então é isso que queriam dizer com a instalação do software ter sido realizada.

Instalação do software: Bem, então eu achei que seria melhor fazer isso por eles, mesmo que nós não fomos pagos para fazer isso, mas seria uma viagem desperdiçada, e não haviam garantia alguma de que vindo na semana seguinte o estaria instalado corretamente. Ah, obrigado por fazer isso, mas você não se importaria de fazer isso no chão, porque estamos precisando do carrinho de cha de volta. Rá!


Caso 2 - Qual versão do PHP você está usando?


Usuário: estou tendo esta mensagem de erro com o seu componente

Eu: Este é um problema conhecido por executar com um a versão de PHP 4, que nós dizemos que não damos suporte que que você deveria procurar isso usando um mecanismo de busca our em "problemas conhecidos" ou "requerimentos do sistema". Por favor, faça o upgrade do seu servidor para PHP 5.

Usuário: Ok, eu vou fazer o upgrade.

Usuário: Eu fiz o upgrade do meu servidor para PHP 5 e continuo tento o mesmo problema.

Eu: Por favor, vá até "informações do sistema" na sua instalação Joomla e me diga o que aparece em "Versão de PHP" e não em "Versão do Banco de dados"

Usuário: Sim, na versão do PHP diz 4.2, e na versão do banco de dados diz 5.0.

Eu: Por favor, faça o upgrade do seu servidor para a versão mais recente do PHP 5.

Usuário: Mas eu já não fiz isso?

Eu: Abro uma garrafa de whiskey, tomo um gole forte e choro em cima do teclado.
  • Como atualizar Joomla 1.5.x para 1.5.15+ (modo rápido)
  • Joomla 1.6 SVN FULL demo online
  • SSH - Autenticação em servidor remoto
  • Programas para executar comandos bash
  • De zero a pagerank 5 em 'menos de duas semanas' - Perdendo a fé na humanidade
  • Chat com Joomleiros do mundo inteiro via IRC - Por que não?
  • Como instalar o Joomla - metodo muito rápido
  • JoomlaFox! - Joomla para Firebug Extensão do Firefox
  • JPATH e $_SERVER - Como obter o caminho
  • JHTML::_('behavior.modal',$selector, $arrayparams);

Pagina 16 de 21

  • 11
  • 12
  • 13
  • ...
  • 15
  • 16
  • 17
  • 18
  • 19
  • ...

Navegação Complementar

Profissional

  • Cursos e Treinamentos
  • Consutoria em Joomla
  • Perícia Forense Digital

Veja Também

  • Palestras
  • Podcasts
  • Github
  • Bash

Joomla, JPlatform e Afins

  • O que é "Joomleiro"?
  • Dicas para Iniciantes
  • Dicas para Designers
  • Dicas para Programadores
  • Suporte Gratuito
  • Suporte Pago

Recomendo

  • Daniel Correa
  • FabMak
  • Juliana Fernandes
  • Ronildo
Emerson Rocha Luiz © 2013
Site de Web Developer focado em boas práticas. Programação, cursos, treinamentos in company, consutoria e suporte avançado.
Joomla! | HTML5

fititnt.org is not affiliated with or endorsed by the Joomla Project or Open Source Matters. The Joomla logo is used under a limited license granted by Open Source Matters the trademark holder in the United States and other countries
HTML5 Valid