SlideShare uma empresa Scribd logo
1 de 31
Baixar para ler offline
CRIANDO
SITES COM
WORDPRESS
Curso de introdução
sábado, 17 de agosto de 13
QUEM
Desenvolvedor Php e Javascript.
Criador do Turumim Framework e do
Oxnt.me, desenvolve para a web há
mais de 5 anos.
SÉRGIO VILAR
Front-End Engineer @ Vertex Tecnologia
Graduando em Análise e Desenv. de Sistemas @ Estácio/iDez
sábado, 17 de agosto de 13
O CURSO
Temos como objetivo ao final do dia
desenvolvermos um site de uma
empresa de cursos.
sábado, 17 de agosto de 13
AGENDA
- Introdução (parte 1)
- O que é um CMS
- Porque Wordpress?
- .com ou .org?
- Baixando e instalando o Wordpress
- Introdução (parte 2)
- Estrutura de pastas
- Criando um novo tema
- Estrutura de dados
- Post Types
- Taxonomies e Terms
sábado, 17 de agosto de 13
AGENDA
- Montando a estrutura
- Criando os post types e taxonomies
- Preparando o layout
- Listando dados
- Hierarquia do Wordpress
- Estrutura de um tema
- Criando arquivos necessários
- O Loop
- A Classe WP_Query
- Implementando o site
- header.php, footer.php e sidebar.php
- Criando o menu
- Listando e exibindo os cursos
sábado, 17 de agosto de 13
PRÉ-REQUISITOS
- Algoritmos e lógica de programação
- Noções de Php
- Noções de HTML e CSS
- Apache/MySQL e editor de texto
sábado, 17 de agosto de 13
O QUE É UM CMS?
CMS = Content Managment System ||
Sistema de gerenciamento de
conteúdo;
sábado, 17 de agosto de 13
PORQUE O WORDPRESS?
SE EXISTEM TANTOS?
WORPRESS É:
- Flexível
- Fácil de usar
- Fácil de desenvolver
- Fácil de personalizar
- Possui uma gama enorme de plugins
- Comunidade ativa
sábado, 17 de agosto de 13
.COM OU .ORG?
Você tem basicamente duas formas de
usar o Wordpress:
.com = Blog criado nos servidores do
Wordpress, limitado como Blogger,
Posterous, etc.
.org = Wodpress self-hosted, você
baixa e faz o que quiser com ele :)
sábado, 17 de agosto de 13
ATIVIDADE 1
Baixe e instale o Wordpress na sua
máquina.
sábado, 17 de agosto de 13
ESTRUTURA
DE PASTAS
/- wp-admin
/ - wp-includes
/ - wp-content
/- uploads
/- plugins
/- themes
sábado, 17 de agosto de 13
ATIVIDADE 2
Crie uma pasta pro seu tema, baixe e
extraia o HTML5 Boilerplate para ela
e crie um arquivo style.css com o
conteúdo abaixo:
/*
Theme Name: Nome do seu tema
Author: Seu nome
Author URI: Seu site
Description: Breve descrição
Version: 1.0
*/
sábado, 17 de agosto de 13
ESTRUTURA
DE DADOS
Post Type = Entidade Forte
Taxonomia = Entidade fraca por associação
Ex:
Post type FILME
Taxonomias: - Gênero
- Ano
- Diretor
sábado, 17 de agosto de 13
POST TYPES
register_post_type( 'curso',
array(
'labels' => array('name' => 'Cursos'),
'public' => true,
'supports' => array( 'title', 'editor'),
'has_archive' => true
)
);
sábado, 17 de agosto de 13
TAXONOMIES
E TERMS
register_taxonomy(‘area’, ‘curso’, array(
'labels' => array('name' => 'Area')
));
OBS: Terms são registro do tipo taxonomy
sábado, 17 de agosto de 13
HOOKS
Hooks são “ganchos” que “penduram” uma função
para que seja executada em determinado
momento.
Hooks são divididos em Actions e Filters.
sábado, 17 de agosto de 13
HOOKS
/- ACTIONS
Actions são executadas quando algum evento é
disparado, por exemplo, precisamos usar uma
action para registrar um post type ou uma
taxonomy:
add_action(“init”, “create_cursos”);
function cursos(){
// aqui vai o código de registro do post type
}
OBS: No exemplo a cima, a função é chamada após o core do
Wordpress ser iniciado.
sábado, 17 de agosto de 13
HOOKS
/- ACTIONS
Também são utilizadas para inserir conteúdo
personalizado em determinados locais, por
exemplo:
add_action(“wp_head”, “insert_description”);
function insert_description(){
echo “<meta name=”description” content=”descrição” />”;
}
OBS: No exemplo a cima, o conteúdo é inserido no local onde
a função wp_head() é chamada. Geralmente no head da página.
sábado, 17 de agosto de 13
HOOKS
/- FILTERS
São usados pra filtrar e modificar algum conteúdo
gerado ou inserido pelo Wordpress, por exemplo:
add_filter(“excerpt_lenght”, “new_excerpt_lenght”);
function new_excerpt_lenght($lenght){
return 100;
}
OBS: No exemplo a cima, a função muda o tamanho de
caracteres do resumo padrão do Wordpress.
sábado, 17 de agosto de 13
ATIVIDADE 3
- Crie o post type CURSO
- Crie as taxonomies PROFESSOR e AREA
sábado, 17 de agosto de 13
ATIVIDADE 4
1 - Baixe o Twitter Bootstrap e escolha uma
template pré-definida em:
http://getbootstrap.com/2.3.2/getting-
started.html#examples
2 - Com a template mais apropriada para um site
de uma empresa de cursos, crie um arquivo
index.php com o conteúdo da página.
sábado, 17 de agosto de 13
HIERARQUIA
DO WORDPRESS
index.php
page.php
archive.php
archive-{post-type}.php
page-{slug}.php
taxtonomy-{taxonomy}.php
single.php
single-{post-type}.php
sábado, 17 de agosto de 13
ATIVIDADE 5
Seguindo a estrutura de dados do nosso site, crie
os arquivos necessários para:
- Listar cursos
- Listar cusos de uma determinada Área
- Exibir os dados de um determinado curso
sábado, 17 de agosto de 13
O LOOP
while(have_posts()): the_post();
echo “<h2>”;
the_title();
echo “</h2>”;
the_content();
endwhile;
sábado, 17 de agosto de 13
A CLASSE
WP_QUERY
$cursos = new WP_Query(array(
‘posts_per_page’ => 5, // Limite de registros
‘post_type’ => ‘cursos’ // Post type
‘order’ => ‘ASC’,
‘tax_query’ => array( // Term “computacao”
‘taxonomy’ => ‘area’,
‘field’ => ‘slug’,
‘terms’ => ‘computacao’
)
));
Referência:
http://codex.wordpress.org/Class_Reference/WP_Query
sábado, 17 de agosto de 13
A CLASSE
WP_QUERY
$cursos = new WP_Query(array(
‘posts_per_page’ => 5, // Limite de registros
));
while($cursos->have_posts()): $cursos->the_post();
echo “<h2>”;
the_title();
echo “</h2>”;
the_content();
endwhile; wp_reset_postdata();
sábado, 17 de agosto de 13
O OBJETO
WPDB
global $wpdb;
$results = $wpdb->get_results(“SELECT * FROM wp_posts”);
foreach($resulsts as $result):
echo $result->post_title.”<br />”;
endforeach;
$count = $wpdb->get_var(“SELECT COUNT(*) FROM wp_posts
WHERE post_status=‘publish’”);
echo “O site tem “.$count.” posts”;
$wpdb->query(“UPDATE wp_posts SET post_title=‘Hehehe’”);
// A query acima atualizará todos os posts do banco =x
sábado, 17 de agosto de 13
ATIVIDADE 6
Abra seu arquivo index.php e identifique o que
é comum no topo, no rodapé e na lateral da
página a todas demais.
Separe nos arquivos header.php, footer.php e
sidebar.php
Nos arquivos de template, use as funções:
get_header();
get_footer();
get_sidebar();
sábado, 17 de agosto de 13
ATIVIDADE 7
1 - Nas configurações do seu Wordpress, vá em
Geral > Links Permanentes e mude para “Nome
do post”
2 - Aponte os links do seu menu para as
páginas corretas.
Ex: http://localhost/cursos
sábado, 17 de agosto de 13
ATIVIDADE 8
1 - Implemente o arquivo que irá listar os
cursos
2 - Implemente o arquivo que irá listar os
detalhes de um único curso
PS. Consulte a documentação da função
get_the_term_list para listar o professor e a área
do curso
sábado, 17 de agosto de 13
É ISSO AÍ,
ATÉ LOGO.
http://sergiovilar.com.br
http://github.com/sergiovilar
sábado, 17 de agosto de 13

Mais conteúdo relacionado

Mais procurados

SEO - Colocando um site em primeiro lugar no Google
SEO - Colocando um site em primeiro lugar no GoogleSEO - Colocando um site em primeiro lugar no Google
SEO - Colocando um site em primeiro lugar no GoogleRafael Lima
 
Como criar um blog - Usando o wordpress no seu próprio domínio
Como criar um blog - Usando o wordpress no seu próprio domínioComo criar um blog - Usando o wordpress no seu próprio domínio
Como criar um blog - Usando o wordpress no seu próprio domínioBeto Tercette
 
Melhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPressMelhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPressJulian Fernandes
 
Wordpress, Guia/Manual do Publicador
Wordpress, Guia/Manual do PublicadorWordpress, Guia/Manual do Publicador
Wordpress, Guia/Manual do PublicadorRenato Vieira
 
Instalando e configurando o WordPress localmente
Instalando e configurando o WordPress localmenteInstalando e configurando o WordPress localmente
Instalando e configurando o WordPress localmenteHaste Design
 
WordPress - Faça seu blog ficar seguro!
WordPress - Faça seu blog ficar seguro!WordPress - Faça seu blog ficar seguro!
WordPress - Faça seu blog ficar seguro!Gustavo Silva Bordoni
 
Site profissional em wordpress - emerson01@gmail
Site profissional em wordpress - emerson01@gmailSite profissional em wordpress - emerson01@gmail
Site profissional em wordpress - emerson01@gmailEmersonGonalves43
 
Introducao ao WordPress
Introducao ao WordPressIntroducao ao WordPress
Introducao ao WordPressKennedy Lucas
 
Dicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPressDicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPressLeo Baiano
 
WordPress para Gestores de Conteúdo - WordCamp BH 2015
WordPress para Gestores de Conteúdo - WordCamp BH 2015WordPress para Gestores de Conteúdo - WordCamp BH 2015
WordPress para Gestores de Conteúdo - WordCamp BH 2015Nauweb
 
WordPress Multisite: O que são, onde vivem, do que se alimentam?
WordPress Multisite: O que são, onde vivem, do que se alimentam?WordPress Multisite: O que são, onde vivem, do que se alimentam?
WordPress Multisite: O que são, onde vivem, do que se alimentam?Rudá Almeida
 
Crie seu site com o WordPress
Crie seu site com o WordPressCrie seu site com o WordPress
Crie seu site com o WordPressEduardo Sully
 
Joomla!: uma visão geral
Joomla!: uma visão geralJoomla!: uma visão geral
Joomla!: uma visão geralMarcelo Andrade
 
Como eu aprendo WordPress?
Como eu aprendo WordPress?Como eu aprendo WordPress?
Como eu aprendo WordPress?Breno Alves
 
Performance e otimização no wordpress
Performance e otimização no wordpressPerformance e otimização no wordpress
Performance e otimização no wordpressDaniel Paz
 
Passo a Passo SEO - Otimização de Sites para Sistemas de Busca
Passo a Passo SEO - Otimização de Sites para Sistemas de BuscaPasso a Passo SEO - Otimização de Sites para Sistemas de Busca
Passo a Passo SEO - Otimização de Sites para Sistemas de BuscaEnlink
 

Mais procurados (20)

SEO - Colocando um site em primeiro lugar no Google
SEO - Colocando um site em primeiro lugar no GoogleSEO - Colocando um site em primeiro lugar no Google
SEO - Colocando um site em primeiro lugar no Google
 
Como criar um blog - Usando o wordpress no seu próprio domínio
Como criar um blog - Usando o wordpress no seu próprio domínioComo criar um blog - Usando o wordpress no seu próprio domínio
Como criar um blog - Usando o wordpress no seu próprio domínio
 
Melhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPressMelhorando o desempenho do seu WordPress
Melhorando o desempenho do seu WordPress
 
Wordpress, Guia/Manual do Publicador
Wordpress, Guia/Manual do PublicadorWordpress, Guia/Manual do Publicador
Wordpress, Guia/Manual do Publicador
 
Instalando e configurando o WordPress localmente
Instalando e configurando o WordPress localmenteInstalando e configurando o WordPress localmente
Instalando e configurando o WordPress localmente
 
WordPress - Faça seu blog ficar seguro!
WordPress - Faça seu blog ficar seguro!WordPress - Faça seu blog ficar seguro!
WordPress - Faça seu blog ficar seguro!
 
Wordpress
WordpressWordpress
Wordpress
 
Wordpress - Além dos blogs
Wordpress - Além dos blogsWordpress - Além dos blogs
Wordpress - Além dos blogs
 
Site profissional em wordpress - emerson01@gmail
Site profissional em wordpress - emerson01@gmailSite profissional em wordpress - emerson01@gmail
Site profissional em wordpress - emerson01@gmail
 
Wordpress basico
Wordpress basicoWordpress basico
Wordpress basico
 
Introducao ao WordPress
Introducao ao WordPressIntroducao ao WordPress
Introducao ao WordPress
 
Dicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPressDicas e truques para desenvolver projetos web utilizando WordPress
Dicas e truques para desenvolver projetos web utilizando WordPress
 
WordPress para Gestores de Conteúdo - WordCamp BH 2015
WordPress para Gestores de Conteúdo - WordCamp BH 2015WordPress para Gestores de Conteúdo - WordCamp BH 2015
WordPress para Gestores de Conteúdo - WordCamp BH 2015
 
WordPress Multisite: O que são, onde vivem, do que se alimentam?
WordPress Multisite: O que são, onde vivem, do que se alimentam?WordPress Multisite: O que são, onde vivem, do que se alimentam?
WordPress Multisite: O que são, onde vivem, do que se alimentam?
 
Crie seu site com o WordPress
Crie seu site com o WordPressCrie seu site com o WordPress
Crie seu site com o WordPress
 
Joomla!: uma visão geral
Joomla!: uma visão geralJoomla!: uma visão geral
Joomla!: uma visão geral
 
Wordpress multisite
Wordpress multisiteWordpress multisite
Wordpress multisite
 
Como eu aprendo WordPress?
Como eu aprendo WordPress?Como eu aprendo WordPress?
Como eu aprendo WordPress?
 
Performance e otimização no wordpress
Performance e otimização no wordpressPerformance e otimização no wordpress
Performance e otimização no wordpress
 
Passo a Passo SEO - Otimização de Sites para Sistemas de Busca
Passo a Passo SEO - Otimização de Sites para Sistemas de BuscaPasso a Passo SEO - Otimização de Sites para Sistemas de Busca
Passo a Passo SEO - Otimização de Sites para Sistemas de Busca
 

Semelhante a Criando sites com Wordpress

Oficina Criando seu primeiro tema do zero
Oficina Criando seu primeiro tema do zeroOficina Criando seu primeiro tema do zero
Oficina Criando seu primeiro tema do zeroFellyph Cintra
 
Construindo sites e sistemas com WordPress
Construindo sites e sistemas com WordPressConstruindo sites e sistemas com WordPress
Construindo sites e sistemas com WordPressLeo Baiano
 
Como criar um plugin para WordPress
Como criar um plugin para WordPressComo criar um plugin para WordPress
Como criar um plugin para WordPressLeandrinho Vieira
 
Evento Front End SP - Arquitetura de Front
Evento Front End SP - Arquitetura de FrontEvento Front End SP - Arquitetura de Front
Evento Front End SP - Arquitetura de FrontMichel Ribeiro
 
Como criar um tema para WordPress
Como criar um tema para WordPressComo criar um tema para WordPress
Como criar um tema para WordPressRafael Funchal
 
Workshop Web e WordPress
Workshop Web e WordPressWorkshop Web e WordPress
Workshop Web e WordPressHaste Design
 
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...Leo Baiano
 
Melhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQueryMelhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQueryHarlley Oliveira
 
Dsi 015 - poo e php - conexão com bancos de dados usando pdo
Dsi   015 - poo e php - conexão com bancos de dados usando pdoDsi   015 - poo e php - conexão com bancos de dados usando pdo
Dsi 015 - poo e php - conexão com bancos de dados usando pdoJorge Luís Gregório
 
Como Perder Peso (no browser)
Como Perder Peso (no browser)Como Perder Peso (no browser)
Como Perder Peso (no browser)Zeno Rocha
 
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 PHPArlindo Santos
 
Criando Sites Com CMS
Criando Sites Com CMSCriando Sites Com CMS
Criando Sites Com CMSClaudio Toldo
 
Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Sérgio Vilar
 
Introducao cms-wordpress
Introducao cms-wordpressIntroducao cms-wordpress
Introducao cms-wordpressMateus Neves
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento WebPeslPinguim
 
Desenvolvimento de Módulos Divi Builder
Desenvolvimento de Módulos Divi BuilderDesenvolvimento de Módulos Divi Builder
Desenvolvimento de Módulos Divi BuilderDaniel Paz
 

Semelhante a Criando sites com Wordpress (20)

Oficina Criando seu primeiro tema do zero
Oficina Criando seu primeiro tema do zeroOficina Criando seu primeiro tema do zero
Oficina Criando seu primeiro tema do zero
 
Construindo sites e sistemas com WordPress
Construindo sites e sistemas com WordPressConstruindo sites e sistemas com WordPress
Construindo sites e sistemas com WordPress
 
Como criar um plugin para WordPress
Como criar um plugin para WordPressComo criar um plugin para WordPress
Como criar um plugin para WordPress
 
Evento Front End SP - Arquitetura de Front
Evento Front End SP - Arquitetura de FrontEvento Front End SP - Arquitetura de Front
Evento Front End SP - Arquitetura de Front
 
Como criar um tema para WordPress
Como criar um tema para WordPressComo criar um tema para WordPress
Como criar um tema para WordPress
 
Workshop Web e WordPress
Workshop Web e WordPressWorkshop Web e WordPress
Workshop Web e WordPress
 
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...
 
Melhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQueryMelhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQuery
 
Dsi 015 - poo e php - conexão com bancos de dados usando pdo
Dsi   015 - poo e php - conexão com bancos de dados usando pdoDsi   015 - poo e php - conexão com bancos de dados usando pdo
Dsi 015 - poo e php - conexão com bancos de dados usando pdo
 
Como Perder Peso (no browser)
Como Perder Peso (no browser)Como Perder Peso (no browser)
Como Perder Peso (no browser)
 
servlet-requisicoes
servlet-requisicoesservlet-requisicoes
servlet-requisicoes
 
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
 
Criando Sites Com CMS
Criando Sites Com CMSCriando Sites Com CMS
Criando Sites Com CMS
 
Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)Estrutura de um Front-End eficiente (para iniciantes)
Estrutura de um Front-End eficiente (para iniciantes)
 
PHP FrameWARks - FISL
PHP FrameWARks - FISLPHP FrameWARks - FISL
PHP FrameWARks - FISL
 
Introducao cms-wordpress
Introducao cms-wordpressIntroducao cms-wordpress
Introducao cms-wordpress
 
Web Performance Client Side
Web Performance Client SideWeb Performance Client Side
Web Performance Client Side
 
Introdução a Desenvolvimento Web
Introdução a Desenvolvimento WebIntrodução a Desenvolvimento Web
Introdução a Desenvolvimento Web
 
Php 07 Cakephp
Php 07 CakephpPhp 07 Cakephp
Php 07 Cakephp
 
Desenvolvimento de Módulos Divi Builder
Desenvolvimento de Módulos Divi BuilderDesenvolvimento de Módulos Divi Builder
Desenvolvimento de Módulos Divi Builder
 

Último

apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médiorosenilrucks
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdfLeloIurk1
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxferreirapriscilla84
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteVanessaCavalcante37
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...IsabelPereira2010
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfFrancisco Márcio Bezerra Oliveira
 
SLIDE DE Revolução Mexicana 1910 da disciplina cultura espanhola
SLIDE DE Revolução Mexicana 1910 da disciplina cultura espanholaSLIDE DE Revolução Mexicana 1910 da disciplina cultura espanhola
SLIDE DE Revolução Mexicana 1910 da disciplina cultura espanholacleanelima11
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfprofesfrancleite
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãIlda Bicacro
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxLuizHenriquedeAlmeid6
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...Rosalina Simão Nunes
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelGilber Rubim Rangel
 
Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......suporte24hcamin
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfHELENO FAVACHO
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéisines09cachapa
 
Araribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioAraribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioDomingasMariaRomao
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfmaurocesarpaesalmeid
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...azulassessoria9
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇJaineCarolaineLima
 

Último (20)

apostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médioapostila projeto de vida 2 ano ensino médio
apostila projeto de vida 2 ano ensino médio
 
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
421243121-Apostila-Ensino-Religioso-Do-1-ao-5-ano.pdf
 
Discurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptxDiscurso Direto, Indireto e Indireto Livre.pptx
Discurso Direto, Indireto e Indireto Livre.pptx
 
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcanteCOMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
COMPETÊNCIA 2 da redação do enem prodção textual professora vanessa cavalcante
 
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
DeClara n.º 75 Abril 2024 - O Jornal digital do Agrupamento de Escolas Clara ...
 
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdfRecomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
Recomposiçao em matematica 1 ano 2024 - ESTUDANTE 1ª série.pdf
 
SLIDE DE Revolução Mexicana 1910 da disciplina cultura espanhola
SLIDE DE Revolução Mexicana 1910 da disciplina cultura espanholaSLIDE DE Revolução Mexicana 1910 da disciplina cultura espanhola
SLIDE DE Revolução Mexicana 1910 da disciplina cultura espanhola
 
Aula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIXAula sobre o Imperialismo Europeu no século XIX
Aula sobre o Imperialismo Europeu no século XIX
 
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdfPRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
PRÉDIOS HISTÓRICOS DE ASSARÉ Prof. Francisco Leite.pdf
 
Construção (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! SertãConstrução (C)erta - Nós Propomos! Sertã
Construção (C)erta - Nós Propomos! Sertã
 
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptxSlides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
Slides Lição 05, Central Gospel, A Grande Tribulação, 1Tr24.pptx
 
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de..."É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
"É melhor praticar para a nota" - Como avaliar comportamentos em contextos de...
 
Dicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim RangelDicionário de Genealogia, autor Gilber Rubim Rangel
Dicionário de Genealogia, autor Gilber Rubim Rangel
 
Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......Introdução a Caminhada do Interior......
Introdução a Caminhada do Interior......
 
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdfProjeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
Projeto de Extensão - ENGENHARIA DE SOFTWARE - BACHARELADO.pdf
 
About Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de HotéisAbout Vila Galé- Cadeia Empresarial de Hotéis
About Vila Galé- Cadeia Empresarial de Hotéis
 
Araribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medioAraribá slides 9ano.pdf para os alunos do medio
Araribá slides 9ano.pdf para os alunos do medio
 
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdfplanejamento_estrategico_-_gestao_2021-2024_16015654.pdf
planejamento_estrategico_-_gestao_2021-2024_16015654.pdf
 
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...Considere a seguinte situação fictícia:  Durante uma reunião de equipe em uma...
Considere a seguinte situação fictícia: Durante uma reunião de equipe em uma...
 
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
ATIVIDADE - CHARGE.pptxDFGHJKLÇ~ÇLJHUFTDRSEDFGJHKLÇ
 

Criando sites com Wordpress

  • 1. CRIANDO SITES COM WORDPRESS Curso de introdução sábado, 17 de agosto de 13
  • 2. QUEM Desenvolvedor Php e Javascript. Criador do Turumim Framework e do Oxnt.me, desenvolve para a web há mais de 5 anos. SÉRGIO VILAR Front-End Engineer @ Vertex Tecnologia Graduando em Análise e Desenv. de Sistemas @ Estácio/iDez sábado, 17 de agosto de 13
  • 3. O CURSO Temos como objetivo ao final do dia desenvolvermos um site de uma empresa de cursos. sábado, 17 de agosto de 13
  • 4. AGENDA - Introdução (parte 1) - O que é um CMS - Porque Wordpress? - .com ou .org? - Baixando e instalando o Wordpress - Introdução (parte 2) - Estrutura de pastas - Criando um novo tema - Estrutura de dados - Post Types - Taxonomies e Terms sábado, 17 de agosto de 13
  • 5. AGENDA - Montando a estrutura - Criando os post types e taxonomies - Preparando o layout - Listando dados - Hierarquia do Wordpress - Estrutura de um tema - Criando arquivos necessários - O Loop - A Classe WP_Query - Implementando o site - header.php, footer.php e sidebar.php - Criando o menu - Listando e exibindo os cursos sábado, 17 de agosto de 13
  • 6. PRÉ-REQUISITOS - Algoritmos e lógica de programação - Noções de Php - Noções de HTML e CSS - Apache/MySQL e editor de texto sábado, 17 de agosto de 13
  • 7. O QUE É UM CMS? CMS = Content Managment System || Sistema de gerenciamento de conteúdo; sábado, 17 de agosto de 13
  • 8. PORQUE O WORDPRESS? SE EXISTEM TANTOS? WORPRESS É: - Flexível - Fácil de usar - Fácil de desenvolver - Fácil de personalizar - Possui uma gama enorme de plugins - Comunidade ativa sábado, 17 de agosto de 13
  • 9. .COM OU .ORG? Você tem basicamente duas formas de usar o Wordpress: .com = Blog criado nos servidores do Wordpress, limitado como Blogger, Posterous, etc. .org = Wodpress self-hosted, você baixa e faz o que quiser com ele :) sábado, 17 de agosto de 13
  • 10. ATIVIDADE 1 Baixe e instale o Wordpress na sua máquina. sábado, 17 de agosto de 13
  • 11. ESTRUTURA DE PASTAS /- wp-admin / - wp-includes / - wp-content /- uploads /- plugins /- themes sábado, 17 de agosto de 13
  • 12. ATIVIDADE 2 Crie uma pasta pro seu tema, baixe e extraia o HTML5 Boilerplate para ela e crie um arquivo style.css com o conteúdo abaixo: /* Theme Name: Nome do seu tema Author: Seu nome Author URI: Seu site Description: Breve descrição Version: 1.0 */ sábado, 17 de agosto de 13
  • 13. ESTRUTURA DE DADOS Post Type = Entidade Forte Taxonomia = Entidade fraca por associação Ex: Post type FILME Taxonomias: - Gênero - Ano - Diretor sábado, 17 de agosto de 13
  • 14. POST TYPES register_post_type( 'curso', array( 'labels' => array('name' => 'Cursos'), 'public' => true, 'supports' => array( 'title', 'editor'), 'has_archive' => true ) ); sábado, 17 de agosto de 13
  • 15. TAXONOMIES E TERMS register_taxonomy(‘area’, ‘curso’, array( 'labels' => array('name' => 'Area') )); OBS: Terms são registro do tipo taxonomy sábado, 17 de agosto de 13
  • 16. HOOKS Hooks são “ganchos” que “penduram” uma função para que seja executada em determinado momento. Hooks são divididos em Actions e Filters. sábado, 17 de agosto de 13
  • 17. HOOKS /- ACTIONS Actions são executadas quando algum evento é disparado, por exemplo, precisamos usar uma action para registrar um post type ou uma taxonomy: add_action(“init”, “create_cursos”); function cursos(){ // aqui vai o código de registro do post type } OBS: No exemplo a cima, a função é chamada após o core do Wordpress ser iniciado. sábado, 17 de agosto de 13
  • 18. HOOKS /- ACTIONS Também são utilizadas para inserir conteúdo personalizado em determinados locais, por exemplo: add_action(“wp_head”, “insert_description”); function insert_description(){ echo “<meta name=”description” content=”descrição” />”; } OBS: No exemplo a cima, o conteúdo é inserido no local onde a função wp_head() é chamada. Geralmente no head da página. sábado, 17 de agosto de 13
  • 19. HOOKS /- FILTERS São usados pra filtrar e modificar algum conteúdo gerado ou inserido pelo Wordpress, por exemplo: add_filter(“excerpt_lenght”, “new_excerpt_lenght”); function new_excerpt_lenght($lenght){ return 100; } OBS: No exemplo a cima, a função muda o tamanho de caracteres do resumo padrão do Wordpress. sábado, 17 de agosto de 13
  • 20. ATIVIDADE 3 - Crie o post type CURSO - Crie as taxonomies PROFESSOR e AREA sábado, 17 de agosto de 13
  • 21. ATIVIDADE 4 1 - Baixe o Twitter Bootstrap e escolha uma template pré-definida em: http://getbootstrap.com/2.3.2/getting- started.html#examples 2 - Com a template mais apropriada para um site de uma empresa de cursos, crie um arquivo index.php com o conteúdo da página. sábado, 17 de agosto de 13
  • 23. ATIVIDADE 5 Seguindo a estrutura de dados do nosso site, crie os arquivos necessários para: - Listar cursos - Listar cusos de uma determinada Área - Exibir os dados de um determinado curso sábado, 17 de agosto de 13
  • 24. O LOOP while(have_posts()): the_post(); echo “<h2>”; the_title(); echo “</h2>”; the_content(); endwhile; sábado, 17 de agosto de 13
  • 25. A CLASSE WP_QUERY $cursos = new WP_Query(array( ‘posts_per_page’ => 5, // Limite de registros ‘post_type’ => ‘cursos’ // Post type ‘order’ => ‘ASC’, ‘tax_query’ => array( // Term “computacao” ‘taxonomy’ => ‘area’, ‘field’ => ‘slug’, ‘terms’ => ‘computacao’ ) )); Referência: http://codex.wordpress.org/Class_Reference/WP_Query sábado, 17 de agosto de 13
  • 26. A CLASSE WP_QUERY $cursos = new WP_Query(array( ‘posts_per_page’ => 5, // Limite de registros )); while($cursos->have_posts()): $cursos->the_post(); echo “<h2>”; the_title(); echo “</h2>”; the_content(); endwhile; wp_reset_postdata(); sábado, 17 de agosto de 13
  • 27. O OBJETO WPDB global $wpdb; $results = $wpdb->get_results(“SELECT * FROM wp_posts”); foreach($resulsts as $result): echo $result->post_title.”<br />”; endforeach; $count = $wpdb->get_var(“SELECT COUNT(*) FROM wp_posts WHERE post_status=‘publish’”); echo “O site tem “.$count.” posts”; $wpdb->query(“UPDATE wp_posts SET post_title=‘Hehehe’”); // A query acima atualizará todos os posts do banco =x sábado, 17 de agosto de 13
  • 28. ATIVIDADE 6 Abra seu arquivo index.php e identifique o que é comum no topo, no rodapé e na lateral da página a todas demais. Separe nos arquivos header.php, footer.php e sidebar.php Nos arquivos de template, use as funções: get_header(); get_footer(); get_sidebar(); sábado, 17 de agosto de 13
  • 29. ATIVIDADE 7 1 - Nas configurações do seu Wordpress, vá em Geral > Links Permanentes e mude para “Nome do post” 2 - Aponte os links do seu menu para as páginas corretas. Ex: http://localhost/cursos sábado, 17 de agosto de 13
  • 30. ATIVIDADE 8 1 - Implemente o arquivo que irá listar os cursos 2 - Implemente o arquivo que irá listar os detalhes de um único curso PS. Consulte a documentação da função get_the_term_list para listar o professor e a área do curso sábado, 17 de agosto de 13
  • 31. É ISSO AÍ, ATÉ LOGO. http://sergiovilar.com.br http://github.com/sergiovilar sábado, 17 de agosto de 13