Joomla.it Forum
Componenti per Joomla! => SEO => : mati1979 11 Nov 2012, 17:21:56
-
Ciao a tutti,
online si trovano tante guide che dicono di impostare come h1 il titolo degli articoli.
Joomla 2.5 assegna in automatico il titolo h2 al titolo degli articoli.
Online si trova una guida (vedi sotto) che spiega come fare l'ovveride dei titoli h1, ma è una guida che si riferisce a joomla 1.5 e le cose nella nuova versione di joomla mi sembrano molto diverse.
Qualcuno mi sa dire come posso fare in modo che l' h1 corrisponda al titolo degli articoli?
Ciao e grazie in anticipo
http://www.joomla.it/articoli-della-community/902-migliorare-il-posizionamento-di-joomla-con-loverride-i-titoli-h1.html (http://www.joomla.it/articoli-della-community/902-migliorare-il-posizionamento-di-joomla-con-loverride-i-titoli-h1.html)
-
ciao il procedimento è esattamente identico, non ti puoi sbagliare!
Il tag da modificare è lo stesso, cambia solo il numero di riga...
-
a me le righe da modificare non mi sembrano la 15 e la 22 come dice il post ...
in joomla 2.5 :
- la riga 15 è : $params = $this->item->params;
- la riga 22: <div class="item-page<?php echo $this->pageclass_sfx?>">
ciao
-
Di questa parte di post
Il tag da modificare è lo stesso, cambia solo il numero di riga...
cosa non ti è chiaro?
-
Ad ogni modo non mi sembrava molto difficile trovare l'unico tag <h2> che appare nella pagina... Bisogna impegnarsi per non trovarlo: è alla riga 35..
<?php if ($params->get('show_title')) : ?>
<h2>
<?php if ($params->get('link_titles') && !empty($this->item->readmore_link)) : ?>
<a href="<?php echo $this->item->readmore_link; ?>">
<?php echo $this->escape($this->item->title); ?></a>
<?php else : ?>
<?php echo $this->escape($this->item->title); ?>
<?php endif; ?>
</h2>
<?php endif; ?>
Diventerà quindi:
<?php if ($params->get('show_title')) : ?>
<h1>
<?php if ($params->get('link_titles') && !empty($this->item->readmore_link)) : ?>
<a href="<?php echo $this->item->readmore_link; ?>">
<?php echo $this->escape($this->item->title); ?></a>
<?php else : ?>
<?php echo $this->escape($this->item->title); ?>
<?php endif; ?>
</h1>
<?php endif; ?>
-
Grazie mille :)
scusa l' "ignoranza"
Ciao
M
-
Scusate se mi intrometto...
Io sono poco pratico... ma i due file sono completamente diversi...
Ho fatto la sostituzione come scritto, il titolo diventa h1, ma perde tutte le caratterstiche che aveva prima (colore, paginazione, ecc..)
Grazie
-
Scusate se mi intrometto...
Io sono poco pratico... ma i due file sono completamente diversi...
Ho fatto la sostituzione come scritto, il titolo diventa h1, ma perde tutte le caratterstiche che aveva prima (colore, paginazione, ecc..)
Grazie
Perchè probabilmente nel CSS del tuo template hai impostati gli stili per il tag H2 anzichè per il tag H1. Ti è sufficiente andare nel file .CSS e associare gli stili dell'H1 a quelli dell'H2. Fai attenzione, però, perchè facendolo tutti gli h1 avranno lo stesso stile in tutte le pagine. Quindi se da qualche parte utilizzi un H1 questo cambierà il suo stile in base alle nuove direttive che gli hai associato.
-
esatto rhllor, proprio come dice anche la guida di tonicopi (per chi l'ha letta!)
-
Salve,
Riprendop questo topic perchè ho un problema simile.
Il mio joomla genera i titoli delle categorie blog come testo (no hx solo testo).
Vorrei invece formattarli come h1 o h2. Se modifico manualmente il codice html generato ottengo quello che voglio.
Quindi ho pensato di fare l'override del codice in joomla, ma non trovo le righe che generano i titoli visualizzati nelle categorie di tipo blog.
Qualcuno puo aiutarmi ?
P.S. Chiedo scusa per aver gia aperto un post simile in altra sezione del forum
-
ciao alex se hai già aperto un'altro thread, continua li la discussione. Non puoi andare in giro per il forum a fare spam..
-
Addirittura "spammer" per aver aperto un post e risposto ad un altro simile ??
Meno male che mi sono scusato, se no mi suonavano i carabinieri alla porta.
Comunque ho trovato la soluzione.
Prego i moderatori di chiudere l'altro post: http://forum.joomla.it/index.php/topic,175245.0.html
-
che suscettibilità... la prossima volta magari fa anche una ricerca prima di aprire l'altra discussione che come hai visto si è rivelata inutile (come questo intervento, tral'altro...)
-
mah...
-
Ciao. Ho provato a fare quello che avete scritto sopra, ma nel mio file default.php c'è già l'h1. Cosa devo fare quindi? Vi scrivo il codice. Grazieee!!!
<?php if ($this->params->get('show_page_heading', 1)) : ?>
<h1>
<?php echo $this->escape($this->params->get('page_heading')); ?>
</h1>
<?php endif; ?>
<?php
if (!empty($this->item->pagination) AND $this->item->pagination && !$this->item->paginationposition && $this->item->paginationrelative)
{
echo $this->item->pagination;
}
?>
<?php if ($params->get('show_title')) : ?>
<h2>
<?php if ($params->get('link_titles') && !empty($this->item->readmore_link)) : ?>
<a href="<?php echo $this->item->readmore_link; ?>">
<?php echo $this->escape($this->item->title); ?>[/url]
<?php else : ?>
<?php echo $this->escape($this->item->title); ?>
<?php endif; ?>
</h2>
<?php endif; ?>
-
Ciao davide, l'h1 già presente corrisponde ad un altro titolo. Se modifichi il tag h2 in h1 anche il titolo dell'articolo assume una maggiore importante a livello seo!
-
Scusa, non riesco a capire ..
Quindi ci possono essere due h1?
-
A livello sintattico è indifferente (non si inca**a nessuno) a livello seo basta che usi uno solo dei due... se hai paura di fare errori cambia l'h1 in h2 ma avresti comunque una situazione atipica in quanto l'h2 si troverebbe al di sopra dell'h1 (gerarchicamente scorretto)
-
Quindi tu cosa mi consigli di fare, in base al codice php che ho scritto sotto?
Poi, vorrei farti un'altra domanda riguardo i SEO, se posso qui, spero vada bene.
Molte volte su Google, nei risultati di ricerca, appare l'indirizzo principale in alto (ad esempio "La Gazzetta dello Sport") e sotto un bell'elenco delle varie sezioni del sito (in questo caso, "calcio", "ciclismo", etc.). Tu sai come si fa ad ottenere un risultato del genere anche per un sito costruito con Joomla 2.5? Grazie.
-
Quindi tu cosa mi consigli di fare, in base al codice php che ho scritto sotto?
-----------------------------------------------------------
Quello che ritieni più idoneo per il tuo sito. Se non usi i titoli che attualmente sono già h1, trasforma gli h2 degli articoli in h1 e continua così (ad esempio).
Poi, vorrei farti un'altra domanda riguardo i SEO, se posso qui, spero vada bene.
----------------------------------------------------------------
Non sono molto preparato sull'argomento. Prova a postare nella sezione SEO , avrai il parere di persone più competenti di me. La questione google comunque mi puzza di "automatico"
-
Ho quindi cambiato il tag h2 in h1, ma ora è successa una cosa strana ..
Nella mia sitemap, è cambiato il nome di un articolo e ora appare come:
http://www.nomesito.com/component/content/article/12-news/6-aliaschehoscritto.html (http://www.palcoaperto.com/component/content/article/12-news/6-compagnia-teatro-amatoriale-palco-aperto-gallarate.html)
Non riesco a capire perchè .. Tra l'altro, quando dal pannello di controllo di Joomla entro nell'editor dell'articolo, lo modifico, ma quella pagina non compare .. Cioè, riesco a raggiungerla solo dal link di Xmap ..
Sai come faccio ad eliminarla o toglierla da Xmap?
-
stai igornando completamente il concetto fondamentale del mio post precedente e comunque non stai seguendo le linee guida sull'utilizzo del forum.
Grazie
-
Perdonami, sono all'inizio, se non capisco qualcosa è dovuto all'inesperienza ..
Quale concetto fondamentale ho ignorato? Mi avevi detto che potevo cambiare i tag h2 in h1, mi sembra di aver capito ..
In che senso non sto seguendo le linee guida? Cosa ho scritto di sbagliato?
-
al punto 1: io non ne capisco quasi niente di seo!
al punto 2: è buona norma aprire un post per ogni argomento e non accodarsi ai topic altrui per migliorare la leggibilità del forum
-
Ma infatti non ho più toccato l'argomento SEO in questo topic, mi riferivo sempre alla questione h1-h2 ..
-
la questione sitemap si allontana dalla modifica del tag h1-h2 e porterà sicuramente ad una serie di considerazioni molto più vaste. Non estendiamo inutilmente la lunghezza di questo topic!
-
mi sorge un dubbio nel mio template non c'e' la cartella html/com_content/article/
devo crearla o metto il file defaul.php all'interno della cartella mio_template??
-
ciao masmaz! La procedura per effettuare l'override prevede anche la creazione di tale cartella. Se la cartella è già presente vuol dire che il template in uso effettua già una override ed è possibile partire da quella, altrimenti è necessario crearla e copiarvi dentro il file da modificare
-
dunque dunque... ho creato quelle cartelle, messo il file modificato ma poi il sito non funziona più... (sono su axxxa) tolto il file il sito rifunziona...
mha! faccio prima a mettere <h1> a mano...
l'errore è il seguente Errore del server
-
hai fatto qualche errore nella procedura. segui attentamente la guida e cortesemente non citare i nomi di servizi commerciali sul forum.
-
ah si scusa...
faccio prima a postarlo perche a me sembra tutto ok.... sembra
?php
/**
* @package Joomla.Site
* @subpackage com_content
* @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
* @license GNU General Public License version 2 or later; see LICENSE.txt
*/
// no direct access
defined('_JEXEC') or die;
JHtml::addIncludePath(JPATH_COMPONENT . '/helpers');
// Create shortcuts to some parameters.
<td class="contentheading<?php echo $this->params->get( 'pageclass_sfx' ); ?>" width="100%">
<h1 class="contentheading<?php echo $this->params->get( 'pageclass_sfx' ); ?>" >
$images = json_decode($this->item->images);
$urls = json_decode($this->item->urls);
$canEdit = $this->item->params->get('access-edit');
$user = JFactory::getUser();
?>
</h1></td>
<?php if ($this->params->get('show_page_heading')) : ?>
<h1>
<?php echo $this->escape($this->params->get('page_heading')); ?>
</h1>
<?php endif; ?>
<?php
if (!empty($this->item->pagination) AND $this->item->pagination && !$this->item->paginationposition && $this->item->paginationrelative)
{
echo $this->item->pagination;
}
?>
<?php if ($params->get('show_title')) : ?>
<h1>
<?php if ($params->get('link_titles') && !empty($this->item->readmore_link)) : ?>
<a href="<?php echo $this->item->readmore_link; ?>">
<?php echo $this->escape($this->item->title); ?></a>
<?php else : ?>
<?php echo $this->escape($this->item->title); ?>
<?php endif; ?>
</h1>
<?php endif; ?>
<?php if ($canEdit || $params->get('show_print_icon') || $params->get('show_email_icon')) : ?>
<ul class="actions">
<?php if (!$this->print) : ?>
<?php if ($params->get('show_print_icon')) : ?>
<li class="print-icon">
<?php echo JHtml::_('icon.print_popup', $this->item, $params); ?>
</li>
<?php endif; ?>
<?php if ($params->get('show_email_icon')) : ?>
<li class="email-icon">
<?php echo JHtml::_('icon.email', $this->item, $params); ?>
</li>
<?php endif; ?>
<?php if ($canEdit) : ?>
<li class="edit-icon">
<?php echo JHtml::_('icon.edit', $this->item, $params); ?>
</li>
<?php endif; ?>
<?php else : ?>
<li>
<?php echo JHtml::_('icon.print_screen', $this->item, $params); ?>
</li>
<?php endif; ?>
</ul>
<?php endif; ?>
<?php if (!$params->get('show_intro')) :
echo $this->item->event->afterDisplayTitle;
endif; ?>
<?php echo $this->item->event->beforeDisplayContent; ?>
<?php $useDefList = (($params->get('show_author')) or ($params->get('show_category')) or ($params->get('show_parent_category'))
or ($params->get('show_create_date')) or ($params->get('show_modify_date')) or ($params->get('show_publish_date'))
or ($params->get('show_hits'))); ?>
<?php if ($useDefList) : ?>
<dl class="article-info">
<dt class="article-info-term"><?php echo JText::_('COM_CONTENT_ARTICLE_INFO'); ?></dt>
<?php endif; ?>
<?php if ($params->get('show_parent_category') && $this->item->parent_slug != '1:root') : ?>
<dd class="parent-category-name">
<?php $title = $this->escape($this->item->parent_title);
$url = '<a href="'.JRoute::_(ContentHelperRoute::getCategoryRoute($this->item->parent_slug)).'">'.$title.'</a>';?>
<?php if ($params->get('link_parent_category') and $this->item->parent_slug) : ?>
<?php echo JText::sprintf('COM_CONTENT_PARENT', $url); ?>
<?php else : ?>
<?php echo JText::sprintf('COM_CONTENT_PARENT', $title); ?>
<?php endif; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_category')) : ?>
<dd class="category-name">
<?php $title = $this->escape($this->item->category_title);
$url = '<a href="'.JRoute::_(ContentHelperRoute::getCategoryRoute($this->item->catslug)).'">'.$title.'</a>';?>
<?php if ($params->get('link_category') and $this->item->catslug) : ?>
<?php echo JText::sprintf('COM_CONTENT_CATEGORY', $url); ?>
<?php else : ?>
<?php echo JText::sprintf('COM_CONTENT_CATEGORY', $title); ?>
<?php endif; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_create_date')) : ?>
<dd class="create">
<?php echo JText::sprintf('COM_CONTENT_CREATED_DATE_ON', JHtml::_('date', $this->item->created, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_modify_date')) : ?>
<dd class="modified">
<?php echo JText::sprintf('COM_CONTENT_LAST_UPDATED', JHtml::_('date', $this->item->modified, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_publish_date')) : ?>
<dd class="published">
<?php echo JText::sprintf('COM_CONTENT_PUBLISHED_DATE_ON', JHtml::_('date', $this->item->publish_up, JText::_('DATE_FORMAT_LC2'))); ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_author') && !empty($this->item->author )) : ?>
<dd class="createdby">
<?php $author = $this->item->created_by_alias ? $this->item->created_by_alias : $this->item->author; ?>
<?php if (!empty($this->item->contactid) && $params->get('link_author') == true): ?>
<?php
$needle = 'index.php?option=com_contact&view=contact&id=' . $this->item->contactid;
$menu = JFactory::getApplication()->getMenu();
$item = $menu->getItems('link', $needle, true);
$cntlink = !empty($item) ? $needle . '&Itemid=' . $item->id : $needle;
?>
<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', JHtml::_('link', JRoute::_($cntlink), $author)); ?>
<?php else: ?>
<?php echo JText::sprintf('COM_CONTENT_WRITTEN_BY', $author); ?>
<?php endif; ?>
</dd>
<?php endif; ?>
<?php if ($params->get('show_hits')) : ?>
<dd class="hits">
<?php echo JText::sprintf('COM_CONTENT_ARTICLE_HITS', $this->item->hits); ?>
</dd>
<?php endif; ?>
<?php if ($useDefList) : ?>
</dl>
<?php endif; ?>
<?php if (isset ($this->item->toc)) : ?>
<?php echo $this->item->toc; ?>
<?php endif; ?>
<?php if (isset($urls) AND ((!empty($urls->urls_position) AND ($urls->urls_position=='0')) OR ($params->get('urls_position')=='0' AND empty($urls->urls_position) ))
OR (empty($urls->urls_position) AND (!$params->get('urls_position')))): ?>
<?php echo $this->loadTemplate('links'); ?>
<?php endif; ?>
<?php if ($params->get('access-view')):?>
<?php if (isset($images->image_fulltext) and !empty($images->image_fulltext)) : ?>
<?php $imgfloat = (empty($images->float_fulltext)) ? $params->get('float_fulltext') : $images->float_fulltext; ?>
<div class="img-fulltext-<?php echo htmlspecialchars($imgfloat); ?>">
<img
<?php if ($images->image_fulltext_caption):
echo 'class="caption"'.' title="' .htmlspecialchars($images->image_fulltext_caption) .'"';
endif; ?>
src="<?php echo htmlspecialchars($images->image_fulltext); ?>" alt="<?php echo htmlspecialchars($images->image_fulltext_alt); ?>"/>
<>
<?php endif; ?>
<?php
if (!empty($this->item->pagination) AND $this->item->pagination AND !$this->item->paginationposition AND !$this->item->paginationrelative):
echo $this->item->pagination;
endif;
?>
<?php echo $this->item->text; ?>
<?php
if (!empty($this->item->pagination) AND $this->item->pagination AND $this->item->paginationposition AND!$this->item->paginationrelative):
echo $this->item->pagination;?>
<?php endif; ?>
<?php if (isset($urls) AND ((!empty($urls->urls_position) AND ($urls->urls_position=='1')) OR ( $params->get('urls_position')=='1') )): ?>
<?php echo $this->loadTemplate('links'); ?>
<?php endif; ?>
<?php //optional teaser intro text for guests ?>
<?php elseif ($params->get('show_noauth') == true and $user->get('guest') ) : ?>
<?php echo $this->item->introtext; ?>
<?php //Optional link to let them register to see the whole article. ?>
<?php if ($params->get('show_readmore') && $this->item->fulltext != null) :
$link1 = JRoute::_('index.php?option=com_users&view=login');
$link = new JURI($link1);?>
<p class="readmore">
<a href="<?php echo $link; ?>">
<?php $attribs = json_decode($this->item->attribs); ?>
<?php
if ($attribs->alternative_readmore == null) :
echo JText::_('COM_CONTENT_REGISTER_TO_READ_MORE');
elseif ($readmore = $this->item->alternative_readmore) :
echo $readmore;
if ($params->get('show_readmore_title', 0) != 0) :
echo JHtml::_('string.truncate', ($this->item->title), $params->get('readmore_limit'));
endif;
elseif ($params->get('show_readmore_title', 0) == 0) :
echo JText::sprintf('COM_CONTENT_READ_MORE_TITLE');
else :
echo JText::_('COM_CONTENT_READ_MORE');
echo JHtml::_('string.truncate', ($this->item->title), $params->get('readmore_limit'));
endif; ?></a>
</p>
<?php endif; ?>
<?php endif; ?>
<?php
if (!empty($this->item->pagination) AND $this->item->pagination AND $this->item->paginationposition AND $this->item->paginationrelative):
echo $this->item->pagination;?>
<?php endif; ?>
<?php echo $this->item->event->afterDisplayContent; ?>
<>
-
Ciao a tutti, non volevo inziare un nuovo topic come d altronde consigliato, perchè volevo solo fare una domanda veloce veloce...
sono riuscito a sostituire gli h2 in h1 cambiando il contenuto del file default.php che si trova in components/com_content/views/article/tmpl...una volta modificato lo lascio nella cartella dove si trova oppure lo devo copiare in templates/mio_template/html/com_content/article/ come suggerito in questa guida:[/size]http://www.joomla.it/articoli-della-community/902-migliorare-il-posizionamento-di-joomla-con-loverride-i-titoli-h1.html[/color]
[/size]Io utilizzo joomla 3.3.[/color]
[/size]Grazie.[/color]
-
devi seguire il consiglio della guida: se lo lasci li verrà sovrascritto al primo aggiornamento con la conseguenza che perderai le modifiche effettuate ;)