PHPSP / phpsp.org.br

PHPSP Website

Home Page:https://phpsp.org.br

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Adicionar tags para melhorar o compartilhamento social

ravanscafi opened this issue · comments

Proposta

Poderíamos ter meta tags no nosso <head> para melhorarmos o compartilhamento social, como facebook, twitter, linkedin, slack, telegram, whatsapp, etc.

Usando os dados que já temos de posts e páginas, poderíamos popular esses campos.

Uma ideia de como fazer:

No arquivo do cabeçalho, adicionamos essas novas tags, pegando os dados necessários.

Links úteis:

Boa noite,
o que acham de criar uma estrutura para as metatags de social, porque por exemplo ':creator' nese caso seria a conta do twitter do author, que no momento pelo que percebi não tem essa informação no post. Outro caso seria um metatado pra descrição, que seria um 'pedaço' do texto que apareceria no card na hora do compartilhamento. Outro ponto é a propriedade ':url', então alguma forma de pegarmos a url do artigo pra preencher esse dado, então imagino uma estrutura similar a isso como metatado no cabeçalho do post:

createdAt: ''
...........
social: {
    username_twitter: ''
    description: ''
    url: ''
}

o que acham? @ravanscafi

Olá,

Gostaria de contribuir. Já foram feitas todas as meta tags? @ravanscafi

Oi @Jciel e @ca-pettarelli

Seria ótimo obter ajuda nesse sentido. Gostei da estrutura do social @Jciel.
Só não sei se precisaria da questão da URL, acho que ela já vem do nome do arquivo do post. O que acha @nawarian?

Sobre as meta-tags, não existe nenhuma de social a princípio. O PR #76 não me parece válido.

O URL a gente consegue pegar direto do $page->getUrl(), então não há necessidade de deixar configurável.

Eu penso que se formos usar a palavra social, os campos deveriam ser genéricos para todas as redes sociais. Daí poderíamos ter um override de propriedades caso o autor precise customizar.

Por exemplo:

createdAt: ''
social: {
  username: 'nawarian',
  username.skype: 'nawarian94'
}

No exemplo acima podemos usar social.username para facebook, twitter e o que mais for. Mas no caso do skype damos precedência e usamos social.username.skype.

Então no template teríamos algo como:

<meta name=”twitter:creator” content="{{ $page->get('social.username.twitter') ?? $page->get('social.username') }}" />

O que acham?

entendi, fica bom tbm, eu preferiria saparar hehehe 😄, mas tranquilo, vamos ver oq o pessoal acha :D

Olá @ravanscafi,
gostaria de contribuir com essa task. Se ok por vocês, me confirma se posso seguir de acordo com a especificação.

Olá @eduardojansen, pode contribuir com essa task sim. O PR #76 foi abandonado pelo autor, então a task ainda está aberta para quem quiser contribuir com o site.