Skip to content

Instantly share code, notes, and snippets.

View profburnes's full-sized avatar

Prof. Anderson Burnes profburnes

View GitHub Profile
@profburnes
profburnes / Trabalhando_com_datas_em_PHP.md
Last active March 29, 2017 13:21
Trabalhando com Datas em PHP

Trabalhando com Datas em PHP

Exemplo simples de manipulação de datas (date) com PHP

Date

O PHP possui uma função date para manipulação de datas. Além dela a classe DateTime (presente no PHP deste a versão 5.2 Documentação no php.net) pode nos ajudar em representação de datas e hora, com ela podemos passar a data em um formato, o brasileiro por exemplo, e obter um outro formato, para inserção em um banco de dados ou outras tarefas.

O formato brasileiro é o d/m/Y, porém o formato americano, aquele que devemos gravar no banco é diferente: Y-m-d. Antigamente muitos utilizavam técnicas como o explode para separar a string em array e depois juntá-las novamente. Com o DateTime isso se torna desnecessário.

Exemplo

Um exemplo de utilização, informar uma data no nosso formato e retornar a data no formato para gravação no banco:

@profburnes
profburnes / Utilizando_Viewport_Units.md
Last active March 29, 2017 14:16
Utilizando Viewport Units

Utilizando Viewport Units

Todo desenvolvedor já deve ter ouvido falar em unidades de medidas como px (pixels), % e ems. Para quem nunca ouviu falar, vou fazer um breve comentário sobre cada uma: o pixel é a unidade de medida mais conhecida, utilizada por diversos softwares como Word e editores gráficos como Photoshop, Corel e Illustrator. O em é uma unidade tipográfica relacionado a letra M, que são variáveis como a porcentagem. Para utlizá-la multiplicamos o tamanho normal da letra por ela, por exemplo, o tamanho das fontes do texto da página está configurado para 12px:

body {
  font-size: 12px;
}
h1 {
 font-size: 2em;
@profburnes
profburnes / Criacao_Banner_para_Tela_Inteira.md
Last active April 3, 2017 13:06
Criação de Banner para Tela Inteira com jQuery, Cycle2 e Viewport Units

Criação de Banner para Tela Inteira com jQuery, Cycle2 e Viewport Units

Com a mudança dos costumes dos usuários, que já imaginam que uma página deve ter rolagem na vertical, os desenvolvedores podem aproveitar a altura da tela para fazer banners mais elaborados e bonitos. Para isso podemos utilizar as Vieport Units Veja Post Sobre para que o seu CSS reconheça a altura do banner de maneira mais fácil e acertada.

Vamos ao exemplo, no cabeçalho do HTML insira os códigos para utilização do jQuery e do Cycle, um plugin para desenvolvimento e configuração de banners:

<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.js"></script>
<script src="http://malsup.github.io/jquery.cycle2.js"></script>
@profburnes
profburnes / Sintaxes_Alternativas.md
Last active April 3, 2017 13:52
Formas abreviadas / Sintaxes alternativas

Formas Abrevidas / Sintaxes Alternativas do PHP

Para algumas estruturas de repetição e de controle pode-se utilizar no PHP uma sintaxe alternativa, trocando as chaves por dois pontos (:) e o fechamento realizado com um end (endif, endwhile, endfor, etc)

Exemplo de IF e ELSE:

<?php
  $idade = 18;
  if ( $idade >= 18 ) : echo "Maior que 18"; else : echo "Menor de idade"; endif; 
?>
@profburnes
profburnes / Criacao_e_Registro_de_Sidebars.md
Last active April 7, 2017 14:26
Como criar e registrar sidebars no Worpress

Criação e Registro de Sidebars

Os sidebars servem para adicionar locais onde poder ser inseridos widgets no seu tema, como barra de buscas, postagens, menus e outros. Para fazer isso é necessário registrar no functions.php os sidebars necessários. Podemos registrar diversos sidebars e distribuí-los no tema. Abra o arquivo functions.php e mãos a obra:

//verificar se a função existe para não dar erro
if (function_exists('register_sidebar')) {
    register_sidebar(
 array(

Começando com Media Queries

Antigamente existiam somente computadores Desktop e Notebooks com resoluções parecidas, 60x480, 800x600, 1024x600 e assim por diante. Com o tempo foram surgindo placas de vídeo melhores, monitores de diversos tamanhos e os sites começaram a ficar estranhos e mal acomodados em diversas resoluções.

Nos últimos 10 anos, os Smartphones e Tablets foram popularizados, trazendo diversos dispositivos com incontáveis resoluções de tela, menores que as telas dos computadores Desktop. Outros dispositivos como TVs e Projetores também começaram a fazer parte de uma extensa lista de dispositivos.

Para isso, o HTML trouxe os Media Types que definiam para qual dispositivo um CSS seria aplicado. Com este é possível definir por exemplo, um CSS somente para impressão, onde podemos retirar imagens de fundo e cores fortes para que o usuário possa realizar uma impressão gastando menos tinta ou deixando a impressão mais legível.

Um outro Media Type aplicaria um CSS a TVs, ou Projetor ou um Handheld

@profburnes
profburnes / sw.js
Created July 21, 2017 04:34
Service Worker
//nome do cache
var cacheName = 'akiexpress';
//arquivos a serem cacheados
var filesToCache = [
"index.html",
"categoria.html",
"carrinho.html",
"produto.html",
"imgs/logo.png",
@profburnes
profburnes / cache.manifest
Created July 21, 2017 04:36
manifest.json
CACHE MANIFEST
js/jquery-3.2.1.min.js
js/materialize.js
@profburnes
profburnes / formatar_valores.js
Created July 22, 2017 11:17
Formatar Valores com JS
//forma simples de formatar valores
function formatar(valor) {
valor = valor.replace(".","");
return parseFloat(valor.replace(",","."));
}
@profburnes
profburnes / Criacao_Tema_Simples_Wordpress.md
Last active November 8, 2018 19:40
Criação de Tema Simples com Wordpress

Criação de Tema Simples para Wordpress

Primeiros Passos

O Wordpress é uma ótima ferramenta de gestão de conteúdo, uma das mais utilizadas. O sistema possui sites com plugins, widgets e themas prontos, muitas vezes "free". Vamos aprender como desenvolver um tema simples utilizando as funções do Wordpress e gerar um site instituional, utilizando Bootstrap e jQuery.

Estrutura de pastas

Os temas do Wordpress ficam dentro da pasta wp-content -> themes. Normalmente a instalação já possui dois ou três temas para uso. Esta pasta deverá conter: