Com este projeto em andamento pretendo desenvolver algumas aplicações em PHP e Javascript para que possam ser disponibilizadas ao mundo via GitHub.
A seguir demonstro como obtive sucesso em criar uma forma de obter um texto normalizado para ser utilizado como title em minhas páginas .php.
O problema:
Como de costume, gosto de fragmentar as páginas em seções (meta, header, footer e alguma outra que possa vir a ser necessária) chamando-as via include:
<?php include('meta.php'); ?>
Geralmente a seção meta (meta.php) contém o hipertexto relativo a importação de páginas externas (css e js), bem como a configuração das meta tags e afins (doctype e charset, por exemplo). Este arquivo meta.php conterá no início o !DOCTYPE html e no final o fechamento da tag head. Sendo assim, tinha em mente que cada página acessada (por meio dos links de navegação do website [contidos dentro da header.php]) deveria possuir um texto próprio para a tag title a fim de identificar a página acessada (current page) também pelo título. Como fazer isso? Qual a única diferença que o arquivo meta.php poderia identificar/aproveitar? Talvez a url?!!
Então pesquisei formas de encontrar a url e o path do arquivo .php que estava sendo acessado. Encontrei fácil na documentação do PHP. Então desenvolvi a seguinte solução (simples, não?) para ter títulos normalizados na minha tag title. Ou seja, cada página conterá o seu texto distinto (se assim for requerido) com relação a página acessada pelos usuários (home.php, arte.php, contato.php entre outras):
<?php $normalized_filename = ucwords(basename($_SERVER['REQUEST_URI'], '.php')); ?>
A explicação:
Como afirmei a solução é simples! A lógica é a seguinte, quando o usuário estiver, por exemplo, na página contato.php ou home.php, no título da página conterá no mínimo a string Contato ou Home. E claro, a variável $normalized_filename sempre estará disponível para qualquer parte do documento .php. que a hospeda.
Sobre o código e as funções deste:
- $_SERVER['REQUEST_URI']; - retorna o caminho e o nome do arquivo (tal como /home/www/index.php).
- basename(path, suffix); - retorna o nome do arquivo (index.php) do caminho especificado (/home/www/index.php) e retira o sufixo que for especificado (.php).
- ucwords(string); - Faz com que uma string seja apresentada capitalizada, ou seja, com as iniciais em letras maiúsculas.
Nenhum comentário:
Postar um comentário