Pagina 1 di 2
Breadcrumb PhpBBSeo
Inviato: 05/06/2014, 10:29
da Sonia
Ciao ragazzi, avrei un problemino riguardante la breadcrumb con phpbbseo, in pratica quando vado a cliccare su una qualsiasi sezione riportata nella breadcrumb, vedi foto:
mi esce questo errore:
Codice: Seleziona tutto
Not Found
The requested URL /community/playstation3/viewforum.php was not found on this server.
Additionally, a 404 Not Found error was encountered while trying to use an ErrorDocument to handle the request.
il problema è il finale del link che anzichè essere per esempio "nick psn" mi esce "viewforum.php".
Qualche idea su come potrei risolvere?
Grazie a tutti

Re: Breadcrumb PhpBBSeo
Inviato: 05/06/2014, 10:37
da Angolo
I menu Breadcrumbs nativi del phpBB3, non hanno menu a tendina. O hai usato una MOD o è stata attuata una modifica allo stile. In base a questo, se la modifica è stata manuale, potrebbe essere stato inserito manualmente qualche link scorretto-improprio. Si deve vedere come è stato costruito.
Re: Breadcrumb PhpBBSeo
Inviato: 05/06/2014, 10:41
da Sonia
La breadcrumb era già installata con lo stile, non ho fatto alcuna modifica.
Re: Breadcrumb PhpBBSeo
Inviato: 05/06/2014, 10:56
da Angolo
Allora si deve capire come quello stile gestisce la cosa: sicuramente, non la gestisce in modo nativo.
Gli adattamenti della SEO, si riferiscono al funzionamento standard del menu breadcrumbs, che non è certo quello di questo stile. Non è previsto il menu a discesa. Sarà piuttosto complicato trovare un adattamento SEO per quello stile, limitatamente alla questione.
La cosa più semplice da fare, consiste nel ricostruire in quello stile, il menu breadcrumbs nativo o del prosilver o del subsilver2 SEO, limitandosi a fare un adattamento circoscritto al solo colore. Una volta ricostruito il menu breadcrumbs nativo del phpBB3, eliminare quello nativo dello stile.
Oppure, se riesci a capire come funziona quel menu, in quel particolare stile, tentare di effettuare un adattamento SEO. È una cosa troppo particolare.
Re: Breadcrumb PhpBBSeo
Inviato: 05/06/2014, 11:03
da Sonia
Ok, grazie per le info...vedrò cosa posso fare

Re: Breadcrumb PhpBBSeo
Inviato: 05/06/2014, 23:57
da Sonia
Ho chiesto un pò in giro e il codice relativo alla breadcrumb è il seguente:
Codice: Seleziona tutto
if($navmenu_enable)
{
if(isset($template->_tpldata['navlinks']) && isset($template->_tpldata['jumpbox_forums']) && (count($template->_tpldata['jumpbox_forums']) > 1)) {
$breadcrumb_popup = '';
$navlinks_data = &$template->_tpldata['navlinks'];
$tree = build_jumpbox_tree($template->_tpldata['jumpbox_forums']);
$parents = array();
foreach ($navlinks_data as $crumb)
{
$parents[] = $crumb['FORUM_ID'];
}
foreach ($navlinks_data as $level => &$crumb)
{
$breadcrumb_popup = '<div class="nav-popup"><ul>';
$breadcrumb_popup .= generate_advanced_breadcrumb($tree, $crumb['FORUM_ID'], $level, $parents);
$breadcrumb_popup .= '</ul></div>';
$crumb['POPUP'] = $breadcrumb_popup;
}
}
}
/* Generate a forum array tree, based on an unordered array like the jumpbox data */
function build_jumpbox_tree($list) {
$tree = $parent_memory = array();
$prev_id = $prev_level = 0;
foreach($list as $item => $vars) {
$forum_id = $vars['FORUM_ID'];
$level = (isset($vars['level']) && is_array($vars['level'])) ? count($vars['level']) : 0;
if ($level == 0) {
$parent_memory = array(0);
} elseif ($level > $prev_level) {
$parent_memory[$level] = $prev_id;
} elseif ($level < $prev_level) {
unset($parent_memory[$prev_level]);
unset($parent_memory[$prev_level + 1]); // clean up
unset($parent_memory[$prev_level + 2]); // clean up
}
$current = (isset($vars['SELECTED']) && !empty($vars['SELECTED']) ? true : false);
$values = array('parent_id' => $parent_memory[$level], 'level' => $level, 'forum_name' => $vars['FORUM_NAME'], 'current' => $current);
switch($level) {
case 0:
$tree[$forum_id] = $values;
break;
case 1:
$tree[$parent_memory[$level]]['children'][$forum_id] = $values;
break;
case 2:
$tree[$parent_memory[$level-1]]['children'][$parent_memory[$level]]['children'][$forum_id] = $values;
break;
case 3:
$tree[$parent_memory[$level-2]]['children'][$parent_memory[$level-1]]['children'][$parent_memory[$level]]['children'][$forum_id] = $values;
break;
}
$prev_id = $forum_id;
$prev_level = $level;
}
unset($tree[-1]);
return $tree;
}
/* Generates menu blocks based on the forum array tree, to use for popup menus */
function generate_advanced_breadcrumb($tree, $crumb_current, $crumb_level = 0, $parents = array()) {
$link = './viewforum.php?f=';
$html = $childhtml = '';
foreach ($tree as $id => $vars)
{
/*if (($crumb_level > $vars['level']) && $crumb_level !== 0)
{
continue;
}*/
if (isset($vars['children'])) {
$childhtml = generate_advanced_breadcrumb($vars['children'], $crumb_current, $crumb_level, $parents);
} else {
$childhtml = '';
}
$parent_id = $vars['parent_id'];
$level = $vars['level'];
if (($crumb_level <= $vars['level'] && in_array($parent_id, $parents)) || $crumb_level == 0)
{
$class = (!empty($childhtml)) ? 'children' : '';
$class .= ($vars['current'] == true || $id == $crumb_current) ? ' current' : '';
$html .= '<li' . ((!empty($class)) ? (' class="' . $class . '">') : ('>'));
$html .= '<a href="' . $link . $id .'">' . $vars['forum_name'] . '</a>';
if (!empty($childhtml)) {
$html .= '<div class="fly-out"><ul>';
$html .= $childhtml;
$html .= '</ul></div>';
}
$html .= "</li>\n";
} else {
$html .= $childhtml;
}
}
return $html;
}
ho notato che a un certo punto punto compare
penso che l'inghippo sia qui...suggerimenti?
Re: Breadcrumb PhpBBSeo
Inviato: 06/06/2014, 7:57
da Angolo
Da quale file hai preso questo codice? Non mi sembra un codice nativo né del phpBB3 né della SEO...
Questa è una MOD...
Re: Breadcrumb PhpBBSeo
Inviato: 06/06/2014, 8:14
da Sonia
Si hai ragione è una mod, me lo ha confermato l'autore della skin solo che non è in grado di aiutarmi dato che mi ha riferito che di phpbbseo non ci capisce nulla dato che non lo ha mai usato, il codice proviene da un file denominato hook_pbwow2.php e quello citato sopra è solo una parte.
Re: Breadcrumb PhpBBSeo
Inviato: 06/06/2014, 8:16
da Angolo
Qui si dovrebbe fare un adattamento SEO a una MOD... una modifica della MOD... intanto vedi se ci sono info in merito, sul Forum di phpBB SEO...
Re: Breadcrumb PhpBBSeo
Inviato: 06/06/2014, 9:06
da Sonia
Ho risolto...bastava semplicemente eliminare viewforum.php, ho modificato da così
a così
e sembra funzionare.