Classe Seo, otimizando seu site com as tags title e description
by Leandro Martins on jan.24, 2009, under Classes, PHP, SEO
Com o crescimento dos buscadores, nunca foi tão importante ficar entre a primeira página do resultado obtido nas buscas. Algoritmos de indexação cada vez mais complexos e analisando vários aspectos do site, como o algoritmo de pagerank que defini a posição de um site numa busca. E para pegar uma posição boa nas busca, são usadas várias técnicas conhecidas pelo termo Search Optimize Engine ou mais conhecido como SEO.
A técnica utilizada nessa classe se trata da otimização das tags “title e description”. Nesse tutorial vou falar apenas sobre a classe Seo, para mais informações sobre a influência dessas tags nas buscas, sugiro acessar esse artigo escrito pelo Ronaldo que fala sobre title tag e meta description tag.
A classe trabalha tanto com banco de dados mysql como postgre, e para usar ela, basta informar o nome do parâmetro que indica os módulos de sua aplicação, seu id e um valor padrão para tags. Para entender melhor seu funcionamento, segue o seu fluxograma abaixo.
Como podemos ver, o fluxo dela lembra um “efeito cascata”, um método vai chamando o outro e retornando um resultado.
A classe Seo_td()
Agora vou comentar sobre seus métodos.
init() inicia a classe Seo_td;
write_tags_td() verifica qual texto das tags vai ser renderizado, os textos do model ou valor padrão definido pela parâmetro default_tags_value;
consult_db() faz a consulta na base de dados afim de busca os valores para as tags(title e dscription);
build_query() constrói a query para executar a consulta. Essa query é composta por 3 parâmetros:
- fields_name: nomes dos campos na tabela, o qual o representa o valor das tags. Esses campos por padrão são chamados de “titulo e conteúdo”, mas pode ser mudado facilmente utilizando o parâmetro field_name;
- tbl_name: nome da tabela que vai ser pesquisada. Esse nome é definido pelo método check_name_modules().
- register_id: o id do registro da tabela, normalmente pegado através da variável global $_GET.
check_name_model() esse método é responsável por defini o nome da tabela, para isso ele verifica dois parâmetros:
- module_name: diz para classe qual vai ser o nome do módulo. Esse parâmetro é usado quando o nome do módulo é o mesmo usada para o nome da tabela no BD;
- modules_name: diz para classe qual vai ser o nome do módulo também, mas com uma pequena diferença. Esse parâmetro é usado numa situação onde o nome do módulo é diferente do nome da tabela, normalmente para aplicações que não segue o padrão MVC. Nesse caso é passado um array associativo, definido qual o nome da tabela representa o seu módulo.
Que tal um exemplo?
-
<?php
-
-
require(‘conection.php’);
-
require(‘Seo.php’);
-
-
$seo_td = new Seo_td();
-
-
$seo_td->module_name = $_GET[‘cmd’];
-
$seo_td->register_id = $_GET[‘id’];
-
$seo_td->init();
-
-
?>
Note que é bem prático o seu uso, a classe não possui um método para efetuar conexão, e sim só para consultar, sendo assim antes de executar a classe, certifique-se que existe uma conexão com o banco de dados. Esse é um exemplo para o caso de o nome do modulo ser o mesmo que na tabela. Vou mostrar um segundo exemplo onde o modulo tem nome diferente da tabela.
-
<?php
-
-
require(‘conection.php’);
-
require(‘Seo.php’);
-
-
$seo_td = new Seo_td();
-
-
$seo_td->module_name = $_GET[‘cmd’];
-
‘artigos’ => ‘tbl_artigos’);
-
$seo_td->register_id = $_GET[‘id’];
-
$seo_td->init();
-
-
?>
Podemos notar que foi adicionado mais um parâmetro que contém as relações de módulo e tabela.
Outros parâmentros que podem ser usados:
-
<?php
-
-
require(‘conection.php’);
-
require(‘Seo.php’);
-
-
$seo_td = new Seo_td();
-
-
$seo_td->module_name = $_GET[‘cmd’];
-
$seo_td->register_id = $_GET[‘id’];
-
$seo_td->init();
-
-
#Define qual tipo de DB vai se usado.
-
$seo_td->db_type = ‘psql’;
-
-
#Define quais os nomes dos campos usado para pegar informação, para as tags title e description
-
$seo_td->fields_name = ‘title, description’;
-
-
?>
Lembrando que o local onde deve usada a classe, é entre as tags <head></head>
Para mais informações sobre como usar a classe, abaixo segue o download, contendo exemplos e sua documentação.
Até a proxíma!

janeiro 24th, 2009 on 21:17
Muito boa essa classe eu já uso em meus projetos pq o leandro já tinha me passado ela dei força pra ele publica-la aqui.
Recomendo o seu uso facilita muito.
Parabéns pela classe Leandro.
Abs,
@oronaldosantos
janeiro 25th, 2009 on 1:18
[...] De forma simples e rápida ele mostra como funciona a classe veja na fonte como funciona a classe em php para tilte tag e description tag. [...]
novembro 19th, 2010 on 10:08
Essa resoluçao é otimo, dessa forma o site tem SEO, Programaçao OO e ainda é PHP.