SlideShare uma empresa Scribd logo
1 de 28
Baixar para ler offline
' @RafaelFunchalwpod.in
'
' @RafaelFunchalwpod.in
'
@RafaelFunchal
Publicitário, Web Developer
e músico nas horas vagas
Desenvolve com WordPress
desde 2009
Administrador do grupo
WordPress Brasil no Facebook
Support Guru no MailPoet.com
' @RafaelFunchalwpod.in
'
Um framework que chuta bundas!
' @RafaelFunchalwpod.in
'
Um framework
de verdade!
Use como um
tema base para
seus projetos
' @RafaelFunchalwpod.in
'
O que vem no Odin?
●
Twitter Bootstrap
●
Suporte a WooCommerce e Jigoshop
●
Suporte ao Infinite Scroll do Jetpack
●
Sass/Compass
●
GruntJS
●
Aqua Resizer
●
FitVids
●
EditorConfig
' @RafaelFunchalwpod.in
'
OK, mas como um tema
funciona?
' @RafaelFunchalwpod.in
'
De forma básica, funciona com arquivos de
templates que carregam funções com
loops/laços para a exibição do conteúdo.
Todo o conteúdo virá do banco de dados e
desta forma você poderá usar o tema em
outros sites/blogs sem nenhum problema.
' @RafaelFunchalwpod.in
'
Arquivos obrigatórios
Os arquivos mínimos para o funcionamento
de um tema para WordPress são:
style.css
index.php
' @RafaelFunchalwpod.in
'
codex.wordpress.org/Template_Hierarchy
' @RafaelFunchalwpod.in
'
Relaxe, o Odin já fez esse
trabalho por você
' @RafaelFunchalwpod.in
'
Toda a estrutura está pronta!
' @RafaelFunchalwpod.in
'
Mas por onde começo?
' @RafaelFunchalwpod.in
'
Sem Grunt ou Sass
Faça suas alterações de CSS diretamente no
seguinte arquivo:
- /assets
- - /css
- - -/style.css
' @RafaelFunchalwpod.in
'
Magicamente com Grunt e Sass
Basta instalar os módulos e dependências e
alterar os arquivos .scss:
$ cd /src
$ npm install
$ grunt watch
https://github.com/wpbrasil/odin/wiki/Usando-o-GruntJS
' @RafaelFunchalwpod.in
'
Altere o que quiser,
mas não meta a mão no /core
' @RafaelFunchalwpod.in
'
' @RafaelFunchalwpod.in
'
Futuras atualizações serão
feitas na pasta core
' @RafaelFunchalwpod.in
'
O que mais o Odin pode
fazer por você?
' @RafaelFunchalwpod.in
'
Criar custom post type
github.com/wpbrasil/odin/wiki/Classe-Odin_Post_Type
Criando um CPT Video
$video = new Odin_Post_Type(
__( 'Video', 'odin' ), // Nome (Singular) do Post Type.
'video' // Slug do Post Type.
);
Setandos os títulos
$video->set_labels(
array(
'menu_name' => __( 'Meus Videos', 'odin' )
)
);
Setando os argumentos
$video->set_arguments(
array(
'supports' => array( 'title', 'editor', 'thumbnail' )
)
);
' @RafaelFunchalwpod.in
'
Criar custom taxonomy
github.com/wpbrasil/odin/wiki/Classe-Odin_Taxonomy
Criando uma taxonomia
$video = new Odin_Taxonomy(
'Categoria', // Nome (Singular) da nova Taxonomia.
'categoria', // Slug do Taxonomia.
'post' // Nome do tipo de conteúdo que a taxonomia irá fazer parte.
);
Setando os títulos
$video->set_labels(
array(
'menu_name' => __( 'Tipos de vídeo', 'odin' )
)
);
Setando argumentos
$video->set_arguments(
array(
'hierarchical' => false
)
);
' @RafaelFunchalwpod.in
'
Criar user meta
github.com/wpbrasil/odin/wiki/Classe-Odin_User_Meta
Criando o user meta
$adicionais_user_meta = new Odin_User_Meta(
'adicionais', // Slug/ID do User Meta (obrigatório)
'Informações Adicionais' // Nome do User Meta (obrigatório)
);
Adicionando campos
$adicionais_user_meta->set_fields(
array(
array(
'id' => 'test_text',
'label' => __( 'Test Text', 'odin' ),
'type' => 'text',
'description' => __( 'Descrição do campo de text', 'odin' )
)
)
);
' @RafaelFunchalwpod.in
'
Criar formulário de contato
github.com/wpbrasil/odin/wiki/Classe-Odin_Contact_Form
function odin_contact_form() {
$form = new Odin_Contact_Form(
'form_id', // ID do formulário
'eu@email.com', // E-mail do destinatário.
array( 'vc@email.com', 'tu@email.com' ), // array com e-mails que
receberão cópia.
array( 'alguem@email.com' ) // array com e-mails que receberão cópia
oculta.
// array( 'class' => 'form' ) // array com atributos para o formulário.
// 'file' // string com método que será enviado o anexo, no caso 'file'
como anexo e 'url' para enviar links.
);
return $form;
}
add_action( 'init', array( odin_contact_form(), 'init' ), 1 );
' @RafaelFunchalwpod.in
'
Criar opções do tema
github.com/wpbrasil/odin/wiki/Classe-Odin_Theme_Options
' @RafaelFunchalwpod.in
'
Shortcodes disponíveis
github.com/wpbrasil/odin/wiki/Classe-Odin_Shortcodes
[button]Text[/button]
[button_group][button]Text[/button][button]Text[/button][/button_group]
[alert]Message[/alert]
[label]Message[/label]
[badge]123[/badge]
[icon]
[well]Content[/well]
[table cols="#,Table heading" rows="1,Table cell"]
[progress]
[tooltip title="Text"]Content[/tooltip]
[map]
[clear]
[qrcode data="Text"]
[panel]
[tabs]
[row] [col class="col-md-6"]Content left[/col]
' @RafaelFunchalwpod.in
'
Personalizando o admin
Admin CSS
odin_admin_css()
Barra de Adm
odin_admin_adminbar_remove_logo()
Rodapé
odin_admin_footer()
Login
odin_admin_login_logo()
odin_admin_logo_url()
odin_admin_logo_title()
Remove widgets do Dashboard
odin_admin_remove_dashboard_widgets()
github.com/wpbrasil/odin/wiki/Customizando-o-Admin
' @RafaelFunchalwpod.in
'
Gerador para Yeoman
Instale o yo
npm install -g yo
Instale o gerador
npm install -g generator-odin
Crie seu projeto usando o Odin
cd /caminho/para/wordpress/wp-content/themes/nome-do-tema
yo odin
npmjs.org/package/generator-odin
' @RafaelFunchalwpod.in
'
Encontrei um erro…sento e choro?
github.com/wpbrasil/odin/
Fork
Fix
Pull Request
Ou então abra um
Issue
' @RafaelFunchalwpod.in
'
Muito obrigado!
Perguntas? Dúvidas? Observações?

Mais conteúdo relacionado

Mais procurados

Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
Celso Fernandes
 
Apresentação blogs
Apresentação blogsApresentação blogs
Apresentação blogs
luizaselis
 
Criando sites com Wordpress
Criando sites com WordpressCriando sites com Wordpress
Criando sites com Wordpress
Sérgio Vilar
 

Mais procurados (19)

Aula30 trevisan
Aula30 trevisanAula30 trevisan
Aula30 trevisan
 
WordPress: De blogs pessoais a grandes portais - Parte 2
WordPress: De blogs pessoais a grandes portais - Parte 2WordPress: De blogs pessoais a grandes portais - Parte 2
WordPress: De blogs pessoais a grandes portais - Parte 2
 
WordPress da instalação à criação de temas personalizados para seu site
WordPress da instalação à criação de temas personalizados para seu siteWordPress da instalação à criação de temas personalizados para seu site
WordPress da instalação à criação de temas personalizados para seu site
 
Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
Reduzindo Tempo de Resposta do Servidor - WordCamp BH 2014
 
Apresentação blogs
Apresentação blogsApresentação blogs
Apresentação blogs
 
Newsletters no WordPress
Newsletters no WordPressNewsletters no WordPress
Newsletters no WordPress
 
Desenvolver um tema para Moodle 2.7 - 9º Moodle Moot Brasil
Desenvolver um tema para Moodle 2.7 - 9º Moodle Moot BrasilDesenvolver um tema para Moodle 2.7 - 9º Moodle Moot Brasil
Desenvolver um tema para Moodle 2.7 - 9º Moodle Moot Brasil
 
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
Meetup WordPress Floripa - Criando tema filho com configuração de SEO e ferra...
 
Como desenvolver um tema wordpress de A a Z
Como desenvolver um tema wordpress de A a ZComo desenvolver um tema wordpress de A a Z
Como desenvolver um tema wordpress de A a Z
 
Html5 em 15 minutos
Html5 em 15 minutosHtml5 em 15 minutos
Html5 em 15 minutos
 
Conhecendo API do Facebook
Conhecendo API do FacebookConhecendo API do Facebook
Conhecendo API do Facebook
 
Criando sites com Wordpress
Criando sites com WordpressCriando sites com Wordpress
Criando sites com Wordpress
 
WordPress: De blogs pessoais a grandes portais - Parte 1
WordPress: De blogs pessoais a grandes portais - Parte 1WordPress: De blogs pessoais a grandes portais - Parte 1
WordPress: De blogs pessoais a grandes portais - Parte 1
 
Curso de WordPress
Curso de WordPressCurso de WordPress
Curso de WordPress
 
WordPress, muito além de um software para blogs
WordPress, muito além de um software para blogsWordPress, muito além de um software para blogs
WordPress, muito além de um software para blogs
 
Melhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPressMelhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPress
 
Diazo para todos
Diazo para todosDiazo para todos
Diazo para todos
 
Construindo temas para Plone com Diazo
Construindo temas para Plone com DiazoConstruindo temas para Plone com Diazo
Construindo temas para Plone com Diazo
 
Criando Temas com Diazo
Criando Temas com DiazoCriando Temas com Diazo
Criando Temas com Diazo
 

Destaque

Destaque (20)

Cain & Obenland — Episode 4
Cain & Obenland — Episode 4Cain & Obenland — Episode 4
Cain & Obenland — Episode 4
 
De sexo, neoliberalismo e bundas
De sexo, neoliberalismo e bundasDe sexo, neoliberalismo e bundas
De sexo, neoliberalismo e bundas
 
O que a comunidade pode fazer por você
O que a comunidade pode fazer por vocêO que a comunidade pode fazer por você
O que a comunidade pode fazer por você
 
O que é WordPress? Números, usabilidade e diferença do wordpress.org e wordpr...
O que é WordPress? Números, usabilidade e diferença do wordpress.org e wordpr...O que é WordPress? Números, usabilidade e diferença do wordpress.org e wordpr...
O que é WordPress? Números, usabilidade e diferença do wordpress.org e wordpr...
 
Saindo do WordPress.com para sua própria instalação
Saindo do WordPress.com para sua própria instalaçãoSaindo do WordPress.com para sua própria instalação
Saindo do WordPress.com para sua própria instalação
 
Internacionalizando­ seu desenvolvimento
Internacionalizando­ seu desenvolvimentoInternacionalizando­ seu desenvolvimento
Internacionalizando­ seu desenvolvimento
 
WordPress Brasil: Comunidade e Projetos
WordPress Brasil: Comunidade e ProjetosWordPress Brasil: Comunidade e Projetos
WordPress Brasil: Comunidade e Projetos
 
Vamos falar de tradução?
Vamos falar de tradução?Vamos falar de tradução?
Vamos falar de tradução?
 
Configurando SSL com Let’s Encrypt, EasyEngine e WP-CLI
Configurando SSL com Let’s Encrypt, EasyEngine e WP-CLIConfigurando SSL com Let’s Encrypt, EasyEngine e WP-CLI
Configurando SSL com Let’s Encrypt, EasyEngine e WP-CLI
 
Empregos com WordPress
Empregos com WordPressEmpregos com WordPress
Empregos com WordPress
 
Como enviar newsletters no WordPress
Como enviar newsletters no WordPressComo enviar newsletters no WordPress
Como enviar newsletters no WordPress
 
Conceito, Linha Criativa e Execução
Conceito, Linha Criativa e ExecuçãoConceito, Linha Criativa e Execução
Conceito, Linha Criativa e Execução
 
ETAPAS PARA CRIAÇÃO DE CAMPANHA PUBLICIDADE
ETAPAS PARA CRIAÇÃO DE CAMPANHA PUBLICIDADEETAPAS PARA CRIAÇÃO DE CAMPANHA PUBLICIDADE
ETAPAS PARA CRIAÇÃO DE CAMPANHA PUBLICIDADE
 
WordPress End-User Security - WordCamp Las Vegas 2011
WordPress End-User Security - WordCamp Las Vegas 2011WordPress End-User Security - WordCamp Las Vegas 2011
WordPress End-User Security - WordCamp Las Vegas 2011
 
Make Cash. Using Open Source. And WordPress.
Make Cash. Using Open Source. And WordPress.Make Cash. Using Open Source. And WordPress.
Make Cash. Using Open Source. And WordPress.
 
Adventures in Non-Profit Web Design
Adventures in Non-Profit Web DesignAdventures in Non-Profit Web Design
Adventures in Non-Profit Web Design
 
WordPress Security & Backups 101
WordPress Security & Backups 101WordPress Security & Backups 101
WordPress Security & Backups 101
 
WordCamp Milwaukee 2012 - Aaron Saray - Secure Wordpress Coding
WordCamp Milwaukee 2012 - Aaron Saray - Secure Wordpress CodingWordCamp Milwaukee 2012 - Aaron Saray - Secure Wordpress Coding
WordCamp Milwaukee 2012 - Aaron Saray - Secure Wordpress Coding
 
WCCHS: Responsive Design with WordPress
WCCHS: Responsive Design with WordPressWCCHS: Responsive Design with WordPress
WCCHS: Responsive Design with WordPress
 
What's the plan for your master brand?
What's the plan for your master brand?What's the plan for your master brand?
What's the plan for your master brand?
 

Semelhante a Odin: Um framework que chuta bundas

Estudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do BlogEstudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do Blog
Vinícius Thiengo
 
Estudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do BlogEstudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do Blog
Vinícius Thiengo
 

Semelhante a Odin: Um framework que chuta bundas (20)

Cakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHPCakephp - framework de desenvolvimento de aplicações Web em PHP
Cakephp - framework de desenvolvimento de aplicações Web em PHP
 
Construindo sites e sistemas com WordPress
Construindo sites e sistemas com WordPressConstruindo sites e sistemas com WordPress
Construindo sites e sistemas com WordPress
 
Criando Sites Com CMS
Criando Sites Com CMSCriando Sites Com CMS
Criando Sites Com CMS
 
Coisas que eu gostaria de saber antes de começar a desenvolver temas e plugin...
Coisas que eu gostaria de saber antes de começar a desenvolver temas e plugin...Coisas que eu gostaria de saber antes de começar a desenvolver temas e plugin...
Coisas que eu gostaria de saber antes de começar a desenvolver temas e plugin...
 
TDC 2015 - Rails & Javascript: faça isso direito
TDC 2015 - Rails & Javascript: faça isso direitoTDC 2015 - Rails & Javascript: faça isso direito
TDC 2015 - Rails & Javascript: faça isso direito
 
Instalando o WordPress local em qualquer sistema operacional - Anyssa Ferreir...
Instalando o WordPress local em qualquer sistema operacional - Anyssa Ferreir...Instalando o WordPress local em qualquer sistema operacional - Anyssa Ferreir...
Instalando o WordPress local em qualquer sistema operacional - Anyssa Ferreir...
 
Framework Yii
Framework YiiFramework Yii
Framework Yii
 
Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
Jetpack, um Canivete Suíço no seu WordPress (WordCamp São Paulo 2014)​
 
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
Aprendendo Na Prática: Aplicativos Web com HTML5, Angular.js, Twitter Bootstr...
 
Estudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do BlogEstudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do Blog
 
Introducao cms-wordpress
Introducao cms-wordpressIntroducao cms-wordpress
Introducao cms-wordpress
 
Criação de temas Liferay 7.0 - LPUG - 12 Setembro 2018
Criação de temas Liferay 7.0 - LPUG - 12 Setembro 2018Criação de temas Liferay 7.0 - LPUG - 12 Setembro 2018
Criação de temas Liferay 7.0 - LPUG - 12 Setembro 2018
 
Python 06
Python 06Python 06
Python 06
 
Analise frameworks php
Analise frameworks phpAnalise frameworks php
Analise frameworks php
 
Tutorial codeigniter
Tutorial codeigniterTutorial codeigniter
Tutorial codeigniter
 
HTML5 e CSS3 – rápido e eficaz para o presente
HTML5 e CSS3 – rápido e eficaz para o presenteHTML5 e CSS3 – rápido e eficaz para o presente
HTML5 e CSS3 – rápido e eficaz para o presente
 
Django Módulo Básico Parte II
Django Módulo Básico Parte IIDjango Módulo Básico Parte II
Django Módulo Básico Parte II
 
Estudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do BlogEstudando Android - Lista de Conteúdos do Blog
Estudando Android - Lista de Conteúdos do Blog
 
Otimização Front-end para WordPress
Otimização Front-end para WordPressOtimização Front-end para WordPress
Otimização Front-end para WordPress
 
Desenvolva temas como um viking - ODIN framework
Desenvolva temas como um viking - ODIN frameworkDesenvolva temas como um viking - ODIN framework
Desenvolva temas como um viking - ODIN framework
 

Mais de Rafael Funchal

Mais de Rafael Funchal (8)

Quem tem medo do terminal?
Quem tem medo do terminal?Quem tem medo do terminal?
Quem tem medo do terminal?
 
Automattic: A empresa por trás do WordPress.com e muito mais
Automattic: A empresa por trás do WordPress.com e muito maisAutomattic: A empresa por trás do WordPress.com e muito mais
Automattic: A empresa por trás do WordPress.com e muito mais
 
WordCamp Floripa 2018: Configurando SSL com Let’s Encrypt, Easy Engine e WP-CLI
WordCamp Floripa 2018: Configurando SSL com Let’s Encrypt, Easy Engine e WP-CLIWordCamp Floripa 2018: Configurando SSL com Let’s Encrypt, Easy Engine e WP-CLI
WordCamp Floripa 2018: Configurando SSL com Let’s Encrypt, Easy Engine e WP-CLI
 
Fazendo de tudo com WordPress
Fazendo de tudo com WordPressFazendo de tudo com WordPress
Fazendo de tudo com WordPress
 
Automattic a empresa por trás do WordPress.com e muito mais
Automattic a empresa por trás do WordPress.com e muito maisAutomattic a empresa por trás do WordPress.com e muito mais
Automattic a empresa por trás do WordPress.com e muito mais
 
Workshop criando um site WordPress do zero
Workshop criando um site WordPress do zeroWorkshop criando um site WordPress do zero
Workshop criando um site WordPress do zero
 
Configurando SSL com Let’s Encrypt, Easy Engine e WP-CLI
Configurando SSL com Let’s Encrypt, Easy Engine e WP-CLIConfigurando SSL com Let’s Encrypt, Easy Engine e WP-CLI
Configurando SSL com Let’s Encrypt, Easy Engine e WP-CLI
 
Fazendo milagres com WordPress
Fazendo milagres com WordPressFazendo milagres com WordPress
Fazendo milagres com WordPress
 

Último

Último (6)

Padrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemploPadrões de Projeto: Proxy e Command com exemplo
Padrões de Projeto: Proxy e Command com exemplo
 
Boas práticas de programação com Object Calisthenics
Boas práticas de programação com Object CalisthenicsBoas práticas de programação com Object Calisthenics
Boas práticas de programação com Object Calisthenics
 
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docxATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
ATIVIDADE 1 - GCOM - GESTÃO DA INFORMAÇÃO - 54_2024.docx
 
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docxATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
ATIVIDADE 1 - LOGÍSTICA EMPRESARIAL - 52_2024.docx
 
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docxATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
ATIVIDADE 1 - ESTRUTURA DE DADOS II - 52_2024.docx
 
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docxATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
ATIVIDADE 1 - CUSTOS DE PRODUÇÃO - 52_2024.docx
 

Odin: Um framework que chuta bundas