Permite usar título do nó homepage como título da página do microsite

Adiciona checkbox 'use_homepage_title' ao formulário de configuração do
microsite. Quando ativado, o hook_preprocess_block substitui o título do
bloco 'Título da Página' pelo título do nó configurado como homepage.
Sem nó configurado ou no caso de fallback, mantém o nome do usuário.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-22 08:32:37 -03:00
parent a500d9ec09
commit 7b747e4eb2
2 changed files with 59 additions and 0 deletions

View File

@@ -45,6 +45,7 @@ class MicrositeUserConfigForm extends FormBase {
$form_state->set('user', $user);
$homepage_nid = $this->userData->get('site_users_microsite', $user->id(), 'homepage_nid');
$use_homepage_title = $this->userData->get('site_users_microsite', $user->id(), 'use_homepage_title');
$nids = $this->entityTypeManager->getStorage('node')
->getQuery()
@@ -75,6 +76,13 @@ class MicrositeUserConfigForm extends FormBase {
'#default_value' => $homepage_nid ?? '',
];
$form['use_homepage_title'] = [
'#type' => 'checkbox',
'#title' => $this->t('Use homepage content title as page title'),
'#description' => $this->t('When checked, the title of the selected homepage content replaces the default page title (your display name).'),
'#default_value' => $use_homepage_title ?? FALSE,
];
$form['actions'] = ['#type' => 'actions'];
$form['actions']['submit'] = [
'#type' => 'submit',
@@ -98,6 +106,13 @@ class MicrositeUserConfigForm extends FormBase {
$this->userData->set('site_users_microsite', $user->id(), 'homepage_nid', (int) $nid);
}
if ($form_state->getValue('use_homepage_title')) {
$this->userData->set('site_users_microsite', $user->id(), 'use_homepage_title', TRUE);
}
else {
$this->userData->delete('site_users_microsite', $user->id(), 'use_homepage_title');
}
Cache::invalidateTags(['site_users_microsite_config:' . $user->id()]);
$this->messenger()->addStatus($this->t('Configuration saved.'));
}