wordpress multisite: desenvolvendo portais com sites interligados

42
WORDPRESS MULTISITE: DESENVOLVENDO PORTAIS COM SITES INTERLIGADOS Nícholas André [email protected] www.nicholasandre.com.br

Upload: nicholas-andre

Post on 20-Jul-2015

462 views

Category:

Software


1 download

TRANSCRIPT

Page 1: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

WORDPRESS MULTISITE: DESENVOLVENDO

PORTAIS COM SITES INTERLIGADOS

Nícholas André

[email protected]

www.nicholasandre.com.br

Page 2: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

QUEM SOU EU?

Nícholas André

Servidor Público Federal – Ufersa

Técnico em Informáticapelo IFRN.

Graduando em Ciência da Computação - Ufersa

DesenvolvedorWordPress

Instrutor em CursosOnline: MX Cursos

Page 3: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

OBJETIVO

O objetivo dessa palestra é apresentar o

WordPress Multisite de uma outra

perspectiva.

Page 4: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

ROTEIRO

O Que é o WordPress Multisite

Quando usar e quando não usar

Como instalar

Usando o Multisite para criar portais com

sites interligados

Estudo de caso: Portal da UFERSA.

Page 5: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O QUE É O WORDPRESS MULTISITE

Uma rede Multisite é uma coleção de sites

em que todos eles compartilham a mesma

instalação do WordPress.

Antes era chamado de WordPress MU.

Page 6: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

TERMINOLOGIA

WordPress Multisite: Se refere ao

WordPress com Multisite habilitado.

Site: Um site em que um usuário pode ser

associado.

Network: Grupo de sites, Multisite por padrão

só suporta uma Network.

Super Admin: Administrador com todos os

poderes em uma Network.

Page 7: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CARACTERÍSTICAS DO WORDPRESS MULTISITE

Compartilhamento de Plugins

Compartilhamento de Temas

Os sites individuais são sites virtuais (não

possuem o seu próprio subdiretório)

Possuem suas próprias tabelas

Possuem seu próprio subdiretório de upload

Page 8: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CARACTERÍSTICAS DO WORDPRESS MULTISITE (2)

Os sites de uma rede multisite são

logicamente separados.

Consequências:

Dificuldade de relacionar os sites

Dificuldade de interligar os sites

Dificuldade de manter um diretório de posts da rede

Page 9: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

DASHBOARD

Page 10: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

PAINEL DA REDE

Page 11: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

PORQUÊ USAR?

Múltiplos sites em uma única instalação.

Facilidade de atualização: atualize todos os

sites de uma só vez.

Instale plugins uma só vez e utilize em todos

os sites.

Permitir que qualquer um crie seu próprio

blog em sua rede multisite.

Page 12: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

QUANDO USAR?

No modelo tradicional o multisite só deve

ser utilizado para sites totalmente

separados.

Alguns cenários:

Wordpress.com

Blogs de colunistas de um jornal

Loja de temas para WordPress: O Preview do

tema pode ser um site em uma rede multisite.

Page 13: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

QUANDO NÃO USAR?

O WordPress Multisite, no modelo

tradicional, não deve ser utilizado para

criação de sites interligados .

Mas nós iremos mudar isso.

“A coisas que queremos e parecem impossíveis só podem

ser conseguidas com uma teimosia pacífica”. (Mahatma Gandhi)

Page 14: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

USAR OU NÃO USAR

Imagine o seguinte cenário:

Portal de uma universidade

Cada curso/departamento/setor precisa ter o seupróprio site com um subdomínio.

Cada curso/departamento/setor possuem seuspróprios menus, mas deve existir um menu global para todo e qualquer site do portal.

O cabeçalho e o rodapé deve ser o mesmo paratodos os sites do portal.

A página inicial do portal poderá exibir notícias de qualquer site do portal.

Page 15: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

PRINCIPAIS PROBLEMAS DO MULTISITE

Muitos plugins não estão preparados para o

Multisite.

Poucos plugins permitem fazer

configurações “globais”.

Aumento na carga do sistema.

Funções switch_to_blog e

restore_current_blog consomem muito

recursos.

Page 16: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

TIPOS DE UMA REDE MULTISITE

Com subdiretórios

Mais fácil de instalar

Mais rápido http://www.example.com/site1

http://www.example.com/site2

Com subdomínios

Mais amigável

Requer configuração no DNS (geralmente um wildcard) http://site1.example.com

http://site2.example.com

Page 17: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMO INSTALAR

1. Decidir o tipo de instalação (subdomínios ou

subdiretórios)

2. Acesse o arquivo wp-config.php e adicione

a linha abaixo logo após o comentário

“That`s all, stop editing! Happy Blogging”.

3. Atualize o Browser

Page 18: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMO INSTALAR (2)

4. Acesse Ferramentas -> Instalação da rede

Page 19: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMO INSTALAR (3)

5. Escolha o tipo de instalação, preencha os

campos e clique em instalar.

6. O WordPress irá pedir para adicionar um

conjunto de linhas ao arquivo wp-

config.php e ao arquivo .htaccess.

Page 20: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CRIANDO PORTAIS COM SITES

INTERLIGADOS

Page 21: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

QUAL A IDEIA?

Permitir interligação de sites em uma redemultisite.

Os sites virtuais estarão diretamente ligadose subordinados ao site principal da rede.

O site principal da rede terá a liberdade de “puxar” posts de qualquer site da rede.

Compartilhamento de informações entre ossites da rede (cabeçalhos, barras laterais, rodapé etc).

Page 22: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMPARTILHANDO CABEÇALHOS E RODAPÉ

Page 23: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMPARTILHANDO CABEÇALHOS E RODAPÉ

Page 24: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMO FAZER?

Crie um tema base para a rede

Para os sites internos crie um tema filho e

modifique somente os arquivos necessários.

Page 25: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O ARQUIVO HEADER.PHP DO TEMA PAI

Page 26: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMPARTILHANDO CATEGORIAS

Com alguns truques é possível compartilhar as

categorias do site principal com os sites

restantes da rede e retirar a permissão dos

administradores dos sites internos de gerenciar

as categorias.

Solução não tão elegante e susceptível a erros

em futuras versões, uma solução melhor seria

desenvolver um plugin especificamente para

isso.

Se houver necessidade de custom taxonomies

essa solução não deve ser utilizada.

Page 27: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

COMPARTILHANDO CATEGORIAS

Page 28: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CATEGORIZANDO OS SITES DA REDE

Categorizar os sites da rede é importante

quando é possível agrupar os sites da rede

em categorias e quando é necessário listar

todos os sites de uma dada categoria.

Exemplo: listar todos os sites relativos a cursos

de graduação.

Gerar um mapa da rede.

Page 29: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CATEGORIZANDO OS SITES DA REDE (2)

Page 30: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CATEGORIZANDO OS SITES DA REDE (3)

Page 31: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CATEGORIZANDO OS SITES DA REDE (4)

Page 32: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK

O Plugin Central Posts Network permite selecionar posts de

qualquer site da rede e exibí-los no site principal.

Page 33: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK (2)

Page 34: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK (3)

functions.php

Page 35: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK (4)

index.php

Page 36: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK (5)

partials/contents/lcontent-featured.php

Page 37: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK (6)

Solicitação de Destaque

Page 38: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK (7)

Solicitação de Destaque.

Ao solicitar destaque, um

super admin precisa

aprovar e publicar o post

na página principal.

Page 39: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

O PLUGIN CENTRAL POSTS NETWORK (8)

Page 40: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

E O DESEMPENHO?

O Multisite aumenta razoavelmente o consumo de recursos sobretudo com o usointensivo das funcões switch_to_blog e restore_current_blog.

Utilize um bom servidor.

Utilize no mínimo o PHP 5.4 (cache opcode).

Utilize soluções de cache.

Com o aumento da infraestrutura o cache passade otimização para necessidade (mas não é a solução para todos os problemas)

Page 41: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

CONCLUSÃO

É preciso avaliar se realmente é necessário

utilizar o WordPress Multisite.

Com as técnicas e plugins demonstradas nessa

palestra é possível utilizar o WordPress

Multisite para desenvolver portais com sites

interligados.

É preciso levar em conta o desempenho e

escalabilidade.

A utilização de uma solução de cache pode ser

uma necessidade.

Page 42: WordPress Multisite: Desenvolvendo Portais com Sites Interligados

OBRIGADO!

Perguntas

?