mirror of
https://gitlab.unicamp.br/infimecc_drupal11_modules/site_tools.git
synced 2026-04-20 19:51:57 -03:00
Adiciona documentação do ShareLinksBlock ao README
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
63
README.md
63
README.md
@@ -5,6 +5,7 @@ Módulo Drupal com ferramentas utilitárias reutilizáveis para outros módulos
|
|||||||
## Funcionalidades
|
## Funcionalidades
|
||||||
|
|
||||||
- **Menu de configuração "Local Modules"**: Fornece uma seção centralizada em `/admin/config/local-modules` para configurações de módulos desenvolvidos internamente.
|
- **Menu de configuração "Local Modules"**: Fornece uma seção centralizada em `/admin/config/local-modules` para configurações de módulos desenvolvidos internamente.
|
||||||
|
- **Bloco Share Links**: Bloco de compartilhamento em redes sociais extensível via hooks.
|
||||||
|
|
||||||
## Requisitos
|
## Requisitos
|
||||||
|
|
||||||
@@ -35,3 +36,65 @@ E declarando a dependência em `.info.yml`:
|
|||||||
dependencies:
|
dependencies:
|
||||||
- site_tools
|
- site_tools
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Bloco Share Links
|
||||||
|
|
||||||
|
O bloco **Share Links** funciona como um container que coleta e exibe links de compartilhamento fornecidos por outros módulos através de hooks.
|
||||||
|
|
||||||
|
### Configuração
|
||||||
|
|
||||||
|
1. Acesse `/admin/structure/block`
|
||||||
|
2. Posicione o bloco "Share Links" na região desejada
|
||||||
|
|
||||||
|
### Fornecendo Links
|
||||||
|
|
||||||
|
Implemente `hook_site_tools_share_links()` no seu módulo:
|
||||||
|
|
||||||
|
```php
|
||||||
|
/**
|
||||||
|
* Implements hook_site_tools_share_links().
|
||||||
|
*/
|
||||||
|
function meu_modulo_site_tools_share_links(): array {
|
||||||
|
$current_url = \Drupal::request()->getUri();
|
||||||
|
$encoded_url = urlencode($current_url);
|
||||||
|
|
||||||
|
return [
|
||||||
|
'facebook' => [
|
||||||
|
'content' => [
|
||||||
|
'#type' => 'link',
|
||||||
|
'#title' => t('Facebook'),
|
||||||
|
'#url' => \Drupal\Core\Url::fromUri(
|
||||||
|
"https://www.facebook.com/sharer/sharer.php?u={$encoded_url}"
|
||||||
|
),
|
||||||
|
'#attributes' => [
|
||||||
|
'target' => '_blank',
|
||||||
|
'rel' => 'noopener',
|
||||||
|
],
|
||||||
|
],
|
||||||
|
'weight' => 0,
|
||||||
|
'provider' => 'meu_modulo',
|
||||||
|
],
|
||||||
|
];
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Alterando Links
|
||||||
|
|
||||||
|
Use `hook_site_tools_share_links_alter()` para modificar ou remover links:
|
||||||
|
|
||||||
|
```php
|
||||||
|
/**
|
||||||
|
* Implements hook_site_tools_share_links_alter().
|
||||||
|
*/
|
||||||
|
function meu_modulo_site_tools_share_links_alter(array &$links): void {
|
||||||
|
unset($links['twitter']);
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
### Documentação Completa
|
||||||
|
|
||||||
|
Consulte [docs/share-links.md](docs/share-links.md) para documentação detalhada incluindo:
|
||||||
|
- Exemplos de integração com AddToAny
|
||||||
|
- Personalização do template Twig
|
||||||
|
- Classes CSS disponíveis
|
||||||
|
- Gerenciamento de cache
|
||||||
|
|||||||
Reference in New Issue
Block a user