Хлебные крошки в Speedbar + RDFa для DLE

Хлебные крошки в Speedbar + RDFa

Хлебные крошки в Speedbar + RDFa

Как известно, в DLE начиная с версии 10.0 в спидбар были добавлены так называемые хлебные хрошки для микроразметки.
Все успешно работает и поисковик их нормально читает, даже валидатор не показывает ни одной ошибки, но есть один нюанс, который немного меня смущает.
Обратим внимание на строку с параметром itemtype:
<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\">

По указанному адресу http://data-vocabulary.org/Breadcrumb гугл отвечает 404. That’s an error.
Не знаю как вам, а меня подобное не совсем устраивает. Поэтому я переделал спидбар в компактный вид согласно схемы http://schema.org/BreadcrumbList

UPD: 23.01.2020
Добавлен второй вариант, который по коду практически ничем не отличается от стандартного спидбара, т.е. без тегов ul и li.
Так же сторонние модули в нем подключаются таким же образом как в DLE-шном.

Вариант №1


Для DLE 13.x можно установить плагин GitHub


Ручная установка:
Открыть файл engine/engine.php
В самый низ файла, перед строкой:
?>

Вставить:
if ($config['speedbar'] AND !$view_template) {
    $speedbar_rdfa = 0; //Формат разметки: 1 - RDFa, 0 - обычная микроразметка
    $speedbar_prop = array(
        'li' => array(
            'itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"',
            'property="itemListElement" typeof="ListItem"',
        ),
        'a' => array(
            //'itemscope itemtype="http://schema.org/Thing" itemprop="item"',
            'itemprop="item"',
            'property="item" typeof="WebPage"',
        ),
        'ul' => array(
            'itemscope itemtype="http://schema.org/BreadcrumbList"',
            'vocab="http://schema.org/" typeof="BreadcrumbList"',
        ),
        'span' => array(
            'itemprop="name"',
            'property="name"',
        ),
        'position' => array(
            'itemprop="position"',
            'property="position"',
        ),
    );
    
    function getBreadcrumbListCategories($id, $sec = false)
    {
        global $speedbar,$cat_info,$config,$dle_module;
        if (!$id) {
            return false;
        }
        if ($cat_info[$id]['parentid']) {
            getBreadcrumbListCategories( $cat_info[$id]['parentid'], true );
        }
        $speedbar[] = [$config['http_home_url'] . get_url( $id ) . '/', $cat_info[$id]['name'], $cat_info[$id]['metatitle']];
    }
    $config['speedbar_separator'] = $config['speedbar_separator'] ? trim($config['speedbar_separator']) : "&raquo";
    $speedbar = [[$config['http_home_url'], $config['short_title'], $config['home_title']]];

    if ($temp = intval($category_id)) {
        getBreadcrumbListCategories($temp);
    } elseif ($do == 'tags') {
        $speedbar[] = array("/tags/", $lang['tag_cloud'] );
        $speedbar[] = array("/tags/" . urlencode($tag), $tag);
    } elseif ($nam_e) {
        $speedbar[] = $nam_e;
    }

    if ($mod_speedbar) {
        $speedbar = array_merge($speedbar, $mod_speedbar);
    }
    if ($titl_e) {
        $speedbar[] = $titl_e;
    } elseif (isset($_GET['cstart']) && intval($_GET['cstart']) > 1) {
        $speedbar[] = $lang['news_site']." ".intval($_GET['cstart']);
    }

    if (count($speedbar) > 1) {
        $last_item = array_pop($speedbar);
        $speedbar[] = is_array($last_item) ? $last_item[1] : $last_item;
    }
    foreach ($speedbar as $k => $v) {
    	if (is_array($v)) {
			$speedbar[$k] = "<li {$speedbar_prop['li'][$speedbar_rdfa]}>";
			$title_s = "<span {$speedbar_prop['span'][$speedbar_rdfa]}>".(is_array($v) ? $v[1] : $v)."</span>";
			$speedbar[$k] .= "<a {$speedbar_prop['a'][$speedbar_rdfa]} href=\"{$v[0]}\" title=\"".($v[2] ?: $v[1])."\">{$title_s}</a>";
			$speedbar[$k] .= "<meta {$speedbar_prop['position'][$speedbar_rdfa]} content=\"" . ($k+1) . "\" /></li>";	//$k + 1
    	} else {
    		$speedbar[$k] = "<li>$v</li>";
    	}
    }

    $tpl->result['speedbar'] = '';
    $tpl->load_template('speedbar.tpl');
    $tpl->set("{speedbar}", "<ul {$speedbar_prop['ul'][$speedbar_rdfa]} class=\"speedbar\">" . join("<li class=\"speedbar_sep\">{$config['speedbar_separator']}</li>", $speedbar) . "</ul>" );
    $tpl->compile('speedbar');
    $tpl->clear();
    $tpl->result['speedbar'] = '<div id="dle-speedbar">' . $tpl->result['speedbar'] . '</div>';
}


В стилях прописать:
.speedbar{
	margin: 0;
	padding: 10px;
	list-style: none;
}
.speedbar:after{
	content: "";
	display: block;
	clear: both;
}
.speedbar li{
	float: left;
	margin-right: 6px;
	color: #222;
}
.speedbar li.speedbar_sep{
	color: #999;
}


Вариант №2


Открыть файл engine/engine.php
В самый низ файла, перед строкой:
?>

Вставить:
if ($config['speedbar'] AND !$view_template ) {
	function getSpeedbarCategory($id = 0, $separator = '&raquo;', $is_link = false, $pos = 2)
	{
		global $cat_info, $config;
		$temp_id = $id = (int)$id;
		if (!$id) return '';
		
		$catlist = [$temp_id];
		while ($parentid = $cat_info[$temp_id]['parentid']) {
			array_unshift($catlist, $parentid);
			$temp_id = $parentid;
		};

		$speedbar = '';
		foreach ($catlist as $cat_id) {
			$speedbar .= " $separator ";
			if (!$is_link && $cat_id == $id) {
				$speedbar .= $cat_info[$cat_id]['name'];
			} else {
				$speedbar .= "<span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"{$pos}\"><a href=\"" . $config['http_home_url'] . get_url($cat_id) . "/\" itemprop=\"item\"><span itemprop=\"name\">{$cat_info[$cat_id]['name']}</span></a></span>";
			}
			$pos++;
		}
		return $speedbar;
	}

	$s_navigation = "<span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"1\"><a href=\"{$config['http_home_url']}\" itemprop=\"item\"><span itemprop=\"name\">" . $config['short_title'] . "</span></a></span>";

	if ($config['start_site'] == 3 AND $_SERVER['QUERY_STRING'] == "" AND !$_POST['do']) $titl_e = "";
	$config['speedbar_separator'] || $config['speedbar_separator'] = ' &raquo; ';

	if (intval($category_id)){
		if($titl_e OR (isset($_GET['cstart']) AND intval($_GET['cstart']) > 1) ) {
			$last_link = true;
		} else $last_link = false;
		$s_navigation .= getSpeedbarCategory($category_id, $config['speedbar_separator'], $last_link);
	} elseif ($do == 'tags') {
		$s_navigation .= " {$config['speedbar_separator']} <span itemprop=\"itemListElement\" itemscope itemtype=\"https://schema.org/ListItem\"><meta itemprop=\"position\" content=\"2\"><a href=\"" . $config['http_home_url'] . "tags/\" itemprop=\"item\"><span itemprop=\"name\">" . $lang['tag_cloud'] . "</span></a></span> {$config['speedbar_separator']} " . $tag;
	} elseif ($nam_e) $s_navigation .= " {$config['speedbar_separator']} " . $nam_e;

	if ($titl_e) {
		$s_navigation .= " {$config['speedbar_separator']} " . $titl_e;
	} else {
		if ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ){
			$page_extra = " {$config['speedbar_separator']} ".$lang['news_site']." ".intval($_GET['cstart']);
		} else $page_extra = '';
		$s_navigation .= $page_extra;
	}

	$tpl->result['speedbar'] = '';
	$tpl->load_template('speedbar.tpl');
	$tpl->set('{speedbar}', '<span id="dle-speedbar"><span itemscope itemtype="https://schema.org/BreadcrumbList">' . stripslashes ($s_navigation) . '</span></span>');
	$tpl->compile('speedbar');
	$tpl->clear ();
}


Пример работы можно видеть на моем сайте или на демо сайте.

Хлебные крошки в Speedbar + RDFa
Хлебные крошки в Speedbar + RDFa


В живую посмотреть можно на валидаторе.

С уважением,
Олег Александрович a.k.a. Sander
Комментарии: (144)
  1. foto
    VIP 5 января 2017 15:25 #
    вот это круто) тоже замечал, то что 404 ошибка идёт, но думал фиг знает, может так нужно ему))
    а тут решение хорошее и правильное, так как микроразметка schema.org удобная
    0
    1. foto
      Гость 13 августа 2019 18:33 #
      Привет. А как плагин скачать? Никак не придумаю. Спасибо
      0
  2. foto
    Посетитель 11 января 2017 20:41 #
    Спасибо, подскажите как убрать тайтл публикации из кода, что бы в Speedbar осталось только : SanDev.pro › Datalife Engine
    0
    1. foto
      Администратор 11 января 2017 22:39 #
      Вместо
      if($titl_e) $speedbar[] = $titl_e;

      Использовать
      if($titl_e AND !$news_found) $speedbar[] = $titl_e;
      +3
      1. foto
        Посетитель 11 января 2017 23:09 #
        Спасибо большое.
        0
      2. foto
        VIP 13 января 2017 05:28 #
        вообще правильно ли я понимаю, то что title тут уже как бы можно использовать, а можно и не использовать, так сказать для фантазии и извращения вебмастера лишь.
        так как микроразметка складывается от данных itemprop="name"
        к чему я? ну если будет стоять title как у Вас на сайте, либо убрать его, как спросила Elena. в результате то, особо нечего не изменится, так как микроразметка строится из данных itemprop="name"
        верно?
        0
        1. foto
          Администратор 13 января 2017 12:43 #
          По большому счету верно, для поисковиков нет разницы есть в спидбаре заголовок или нет. Они все равно в первую очередь обращают внимание на metatitle и h1
          0
  3. foto
    VIP 13 января 2017 04:39 #
    вот появился такой вопрос, а если применить данную телегу, а как быть тем у кого модуль например dle-cart Ваш.
    там вставка кода немного другая какая то, ну и поле, например найти и перед вставить, уже изменяется...
    как правильно применить к этому хаку и ещё установку в спидбар dle-cart?
    0
    1. foto
      Администратор 13 января 2017 12:39 #
      	elseif( $do == 'cart' ){
      		if( $subaction ){
      			$speedbar[] = array( "/cart/", $cart_config['metatitle'] );
      			$speedbar[] = $cart_lang["cpage_".$subaction];
      		}else $speedbar[] = $cart_config['metatitle'];
      	}
      +1
      1. foto
        VIP 14 января 2017 08:01 #
        а тут, куда вставлять? ну чтобы не намутить)
        if ($config['speedbar'] AND !$view_template ) {
        	function get_breadcrumblistcategories($id,$sec = false){
        		global $speedbar,$cat_info,$config,$cstart,$dle_module;
        		if(!$id) return;
        		$parent_id = $cat_info[$id]['parentid'];
        		if($parent_id) get_breadcrumblistcategories( $parent_id, true );
        		if($sec OR $cstart>1 OR $dle_module!='cat') $speedbar[] = array( $config['http_home_url'] . get_url( $id ), $cat_info[$id]['name'], $cat_info[$id]['metatitle'] );
        		else $speedbar[] = $cat_info[$id]['name'];
        	}
        	$config['speedbar_separator'] = $config['speedbar_separator'] ? trim($config['speedbar_separator']) : "&raquo";
        	$speedbar = array( array( $config['http_home_url'], $config['short_title'], $config['home_title'] ) );
        	if (intval($category_id)) get_breadcrumblistcategories( intval($category_id) );
        	elseif( $do == 'tags' ){
        		$speedbar[] = array( "/tags/", $lang['tag_cloud'] );
        		$speedbar[] = $tag;
        	}elseif($nam_e) $speedbar[] = $nam_e;
        
        	if($titl_e) $speedbar[] = $titl_e;
        	elseif( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ) $speedbar[] = $lang['news_site']." ".intval($_GET['cstart']);
        
        	foreach($speedbar as $k=>$v){
        		$speedbar[$k] = '<li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem">';
        		$title_s = "<span itemprop=\"name\">".(is_array($v) ? $v[1] : $v)."</span>";
        		$speedbar[$k] .= is_array($v) ? "<a itemprop=\"item\" href=\"{$v[0]}\" title=\"".($v[2] ?: $v[1])."\">{$title_s}</a>" : $title_s;
        		$speedbar[$k] .= "<meta itemprop=\"position\" content=\"".( $k+1 )."\" /></li>";
        	}
        	$tpl->load_template ( 'speedbar.tpl' );
        	$tpl->set ( "{speedbar}", "<ul itemscope itemtype=\"http://schema.org/BreadcrumbList\" class=\"speedbar\">".implode("<li class=\"speedbar_sep\">{$config['speedbar_separator']}</li>",$speedbar)."</ul>" );
        	$tpl->compile ( 'speedbar' );
        	$tpl->clear();
        	$tpl->result['speedbar'] = '<span id="dle-speedbar">'.$tpl->result['speedbar'].'</span>';
        }
        ?
        0
        1. foto
          Администратор 14 января 2017 12:13 #
          Так же, перед:
          elseif( $do == 'tags' ){
          +1
  4. foto
    Посетитель 14 января 2017 14:29 #
    А в engine/modules/functions.php ничего переделывать не нужно?
    И на что это повлияет если в engine.php переделать, а в functions.php так оставить?

    function get_breadcrumbcategories($id) {
    	
    	global $cat_info, $config, $PHP_SELF;
    	
    	if( ! $id ) return;
    	
    	$parent_id = $cat_info[$id]['parentid'];
    	
    	if( $config['allow_alt_url'] ) $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" . $config['http_home_url'] . get_url( $id ) . "/\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span></a></span>";
    	else $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$id]['alt_name']}\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$id]['name']}</span></a></span>";
    	
    	while ( $parent_id ) {
    		
    		if( $config['allow_alt_url'] ) $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"" . $config['http_home_url'] . get_url( $parent_id ) . "/\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$parent_id]['name']}</span></a></span>" . " &raquo; " . $list;
    		else $list = "<span itemscope itemtype=\"http://data-vocabulary.org/Breadcrumb\"><a href=\"$PHP_SELF?do=cat&amp;category={$cat_info[$parent_id]['alt_name']}\" itemprop=\"url\"><span itemprop=\"title\">{$cat_info[$parent_id]['name']}</span></a></span>" . " &raquo; " . $list;
    		
    		$parent_id = $cat_info[$parent_id]['parentid'];
    		
    		if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
    	
    	}
    	
    	return $list;
    }
    0
    1. foto
      Администратор 14 января 2017 14:51 #
      Эта функция более не используется. Вместо нее я написал свою get_breadcrumblistcategories
      Так проще установка, когда все в одном месте вставляется.
      +1
      1. foto
        Посетитель 14 января 2017 15:18 #
        Спасибо.
        0
  5. foto
    VIP 16 января 2017 15:41 #
    А как заменить между разделами оформление <li class="speedbar_sep">›</li>? Стрелочки не приметные, как ее заменить на стрелочку из fontawesome? Уже и стили прописал, а старая стрелочка пропала, а новая не появилась(((
    Вот класс для новой стрелочки
    .speedbar_sep {content:'\e600';font-family:'icomoon';speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#b9b9b9;position:absolute;right:-22px;top:7px;font-size:25px;}
    

    Как произвести замену?
    0
    1. foto
      Администратор 16 января 2017 17:52 #
      Не проще ли в настройках движка просто указать в поле разделителя:
      <i class='icon-youricon'></i>
      +1
  6. foto
    VIP 17 января 2017 23:08 #
    Цитата: Sander
    Не проще ли в настройках движка просто указать в поле разделителя:
    <i class='icon-youricon'></i>

    А немного подробнее можно?))) Где именно эти настройки находятся?)
    +1
  7. foto
    VIP 18 января 2017 08:12 #
    Цитата: baseroad
    Цитата: Sander
    Не проще ли в настройках движка просто указать в поле разделителя:
    <i class='icon-youricon'></i>

    А немного подробнее можно?))) Где именно эти настройки находятся?)

    Нашел, спасибо)
    0
  8. foto
    Клиент 24 января 2017 12:44 #
    Отличное решение, спасибо! Не могли бы Вы только подсказать, как сделать так, чтобы
    <span id="dle-speedbar">
    шел уже после
    <div class="speedbar">
    , как было реализовано изначально? Поскольку в ином случае ругается валидатор
    0
    1. foto
      Администратор 24 января 2017 12:54 #
      Обновил инструкцию. Заменил span на div.
      +2
      1. foto
        Клиент 25 января 2017 19:22 #
        Благодарю! Заметил еще небольшой недочет с точки зрения SEO: ссылки на категории идут без слэша (Пример: http://site.ru/news). В результате данная ссылка будет иметь статус "301 Moved Permanently". Поэтому, желательно, чтобы ссылки шли изначально со слэшем.
        +2
        1. foto
          Администратор 25 января 2017 20:04 #
          Уф, точно. Как-то совсем не обратил на это внимание.
          Спасибо. Исправил код.
          0
  9. foto
    Посетитель 2 марта 2017 20:59 #
    Подскажите пожалуйста как сделать что бы на странице тега ссылка в спидбаре была кликабельна ? ( нарушала СЕО и сама на себя ссылалась) .

    И правильно ли подправила тоже самое для категорий: function get_breadcrumblistcategories($id,$sec = false){
    заменила на: function get_breadcrumblistcategories($id,$sec = "»"){
    0
    1. foto
      Посетитель 2 марта 2017 23:44 #
      заменила на: function get_breadcrumblistcategories($id,$sec = "& raquo ;"){
      0
    2. foto
      Администратор 3 марта 2017 02:24 #
      Для тегов:
      $speedbar[] = $tag;

      Заменить на
      $speedbar[] = array("/tags/".urlencode($tag), $tag);


      Для категорий:
      function get_breadcrumblistcategories($id,$sec = true){
      0
  10. foto
    Посетитель 3 марта 2017 02:49 #
    Спасибо огромное!
    0
  11. foto
    Посетитель 13 марта 2017 11:46 #
    А в чём отличия от RDFA Breadcrumb
    https://gameer.name/dle/43
    0
    1. foto
      Администратор 13 марта 2017 12:57 #
      Про разницу форматов RDFa и microdata вам лучше проконсультироваться у SEO специалистов.
      Подправил код, добавил возможность переключения типа разметки в параметре
      $speedbar_rdfa = true;
      0
  12. foto
    Клиент 21 октября 2017 00:14 #
    После обновления до DLE 12 (либо это вообще не связано с обновлением, однако до этого проблема не возникала) столкнулся со следующей ошибкой валидатора:
    The itemprop attribute was specified, but the element is not a property of any item.
    /span></a><meta itemprop="position" content="1" /></li><

    The itemprop attribute was specified, but the element is not a property of any item.
    /span></a><meta itemprop="position" content="2" /></li><
    0
    1. foto
      Администратор 23 октября 2017 14:50 #
      Был маленький недочет с этим itemprop. Для RDFa и микроразметки он по разному должен быть прописан.
      На гугловском валидаторе проверил, оба варианта работают исправно, ошибок нет.
      0
  13. foto
    VIP 15 ноября 2017 20:32 #
    А, что желательно указать в настройках системы в поле "Краткое название сайта" ? Урл домена без http или что? Или вообще не важно? А что лучше? )
    P.S. В инструкции написано:
    Найти код
    
    if ($config['speedbar']
    ...
    }
    ?>
    

    Заменить на... но уже без символов в конце:
    
    ?>
    
    0
    1. foto
      Администратор 15 ноября 2017 23:44 #
      Короткое название сайта - что угодно, но что-то что логически будет соответствовать главной странице сайта. Чтобы в гугле отображалось красиво и понятно.

      ?>

      в конце не обязателен и даже скорее вовсе не нужен.
      Желательно только чтобы последняя строка была просто пустая.
      +1
  14. foto
    Клиент 23 ноября 2017 23:31 #
    как вернуть отображения названия новости в speedbar? (как у вас на сайте )
    0
    1. foto
      Клиент 23 ноября 2017 23:34 #
      всё норм. просто сливалось с фоном и не было видно
      0
  15. foto
    Клиент 20 декабря 2017 09:54 #
    Подскажите, стоит MultiTags как сделать ссылки в speedbar как у вас на сайте KinoLem, то есть вместо "Site » Тег,Тег" сделать "Site » Тег + Тег". Интересует именно разделитель вместо запятой плюс, ссылку на облако тегов я уже убрал)))
    0
    1. foto
      Администратор 20 декабря 2017 13:21 #
      engine/engine.php
      Найти строку:
      	elseif ($do == 'tags') {

      После нее вставить:
      		$tag = str_replace(",", " + ", $tag);
      0
      1. foto
        Клиент 20 декабря 2017 14:54 #
        Спасибо!
        0
  16. foto
    VIP 17 января 2018 00:53 #
    У меня в шаблоне автор не предусмотрел в верстке тег speedbar. Отсутствие этого тега в шаблоне повлияет на микроразметку?
    P.S. На первом сайте все отлично получилось!
    0
    1. foto
      Администратор 17 января 2018 15:45 #
      speedbar - это и есть хлебные крошки.
      нет спидбира - нет крошек.
      нет крошек - нет разметки.
      +1
  17. foto
    VIP 17 января 2018 00:55 #
    На DLE 12.1 тоже нужно делать изменения?
    25. Добавлено использование микроразметки schema.org для вывода рейтинга с типом "Оценка". Использование данной микроразметки позволяет для полных новостей при выводе их в результатах поиска в Google выводить также и рейтинг публикации.
    0
    1. foto
      Администратор 17 января 2018 15:45 #
      Микроразметка для хлебных крошек и для рейтинга - это разные никак не связанные вещи.
      +1
  18. foto
    Гость 22 января 2018 20:59 #
    Здравствуйте. Скажите в Вашем коде таже проблема что и в коде DLE. Если новость добавлена в подкатегорию и ей присовена родительская и подчиненная категория, но в крошках выводится только родительская, как туда вывесьти еще и подчиненную?
    Пример:
    Новостям присвоены категории Россия --> Москва (Москва вложенная категория в Россию)

    Хлебные крошки выводятся: Главная --> Роcсия --> title новости
    Но поидее должны Главная --> Россия ---> Москва ---> title новости.
    Как сделать второй вариант? - Он получается только если не присваивать новости родительскую категорию а только вложенную. Но у меня просто всем уже так присвоено, и если так сделать то ломаеться другой функционал.
    0
    1. foto
      Администратор 22 января 2018 21:17 #
      И в DLE и в моем варианте проблем нету.
      http://color.sandev.pro/3999-mobilnyy-telefon-xiaomi-redmi-note-3-pro-dual-sim-16gb-gray.html
      Цветофильтр » Телефоны » Мобильные телефоны » Мобильный телефон Xiaomi Redmi Note 3 Pro Dual Sim 16Gb Gray

      Где:
      "Телефоны" - категория
      "Мобильные телефоны" - подкатегория категории "Телефоны"

      Но если у вас новость отмечена в подкатегории, а потом внизу так же дополнительно отмечена категория, то основной будет считаться последняя отмеченная.
      0
  19. foto
    Гость 23 февраля 2018 06:56 #
    Спасибо большое за великолепный хак! А можно как-то добавить чтобы в страницах пагинации добавлялось, вот пример: Страница 7 » из 777 страниц Думаю это чуть больше придаст уникальности страницам пагинации, что будет полезно для seo.
    0
    1. foto
      Администратор 23 февраля 2018 15:20 #
      По простому не сделать для этого нужно писать хак.
      Нужно из сформированного текста контента регуляркой получать значение общего количества страниц навигации.
      Это сделать можно, но решение нельзя сделать универсальным, для каждого шаблона будет свое регулярное выражение.
      0
  20. foto
    Гость 24 февраля 2018 21:49 #
    Здравствуйте. Отличный хак и простой но есть некоторые вопросы, над которыми бьюсь уже около 3 часов:
    Как адаптировать любые красивые хлебные крошки (например такие - pro-cod.ru/oformlenie-xlebnyx-kroshek-css.html) под этот код? Уже часа 3 мучаюсь и ни одну поставить не могу.
    И получились какие-то страшные (ссылки синего цвета, вообщем все не так, как у вас):
    b.radikal.ru/b09/1802/0c/bc5103c4abaf.png
    0
    1. foto
      Администратор 25 февраля 2018 12:51 #
      Формируемая модулем верстка вполне позволяет использовать стиль указанный по вашей ссылке.
      Но нужны хотя бы начальные знания в css и html.
      0
  21. foto
    Гость 24 февраля 2018 22:11 #
    Цитата: noname
    Здравствуйте. Отличный хак и простой но есть некоторые вопросы, над которыми бьюсь уже около 3 часов:
    Как адаптировать любые красивые хлебные крошки (например такие - pro-cod.ru/oformlenie-xlebnyx-kroshek-css.html) под этот код? Уже часа 3 мучаюсь и ни одну поставить не могу.
    И получились какие-то страшные (ссылки синего цвета, вообщем все не так, как у вас):
    b.radikal.ru/b09/1802/0c/bc5103c4abaf.png

    Забыл дописать, что DLE 10.3.
    И в самой новости ссылки нормального, приятно цвета:
    b.radikal.ru/b21/1802/dc/d4167288703a.png
    0
  22. foto
    Гость 25 февраля 2018 12:54 #
    Цитата: Sander
    Формируемая модулем верстка вполне позволяет использовать стиль указанный по вашей ссылке.
    Но нужны хотя бы начальные знания в css и html.

    Ладно, это не столь важно. Как сделать ссылки speedbar такого же цвета, как и у вас? У меня они как видите синие, страшные.
    0
    1. foto
      Администратор 25 февраля 2018 13:05 #
      Добавьте стиль:
      .speedbar li a{
          color: #0288d1;
      }

      И укажите свой желаемый цвет ссылок.
      0
      1. foto
        Гость 25 февраля 2018 13:33 #
        Цитата: Sander
        Добавьте стиль:
        .speedbar li a{
            color: #0288d1;
        }

        И укажите свой желаемый цвет ссылок.

        Спасибо, а как сделать, чтобы ссылка при наведении курсора становилась красной, как и у вас?
        И есть еще одна проблема, я тайтл новости убрал (заменил ($titl_e) на ($titl_e AND !$news_found) (так, как вы указали)), но тогда получается, что при просмотре новости в крошках нет ссылки на категорию, в которой новость находится, т.е само название категории есть, а ссылки на нее нет:
        b.radikal.ru/b14/1802/66/5b447ad18bb8.png
        0
  23. foto
    Гость 25 февраля 2018 16:50 #
    Цитата: noname
    Цитата: Sander
    Добавьте стиль:
    .speedbar li a{
        color: #0288d1;
    }

    И укажите свой желаемый цвет ссылок.

    Спасибо, а как сделать, чтобы ссылка при наведении курсора становилась красной, как и у вас?
    И есть еще одна проблема, я тайтл новости убрал (заменил ($titl_e) на ($titl_e AND !$news_found) (так, как вы указали)), но тогда получается, что при просмотре новости в крошках нет ссылки на категорию, в которой новость находится, т.е само название категории есть, а ссылки на нее нет:
    b.radikal.ru/b14/1802/66/5b447ad18bb8.png

    С цветом при наведении курсора разобрался почти сразу, а вот со вторым не могу. Странно, что никто не обратил на это внимание.
    0
    1. foto
      Администратор 26 февраля 2018 19:54 #
      Строку:
      if ($titl_e) {

      Заменить на:
      if ($titl_e && $dle_module != 'showfull') {


      Строки:
          $last_item = array_pop($speedbar);
          $speedbar[] = is_array($last_item) ? $last_item[1] : $last_item;

      Заменить на:
      if ($dle_module != 'showfull') {
          $last_item = array_pop($speedbar);
          $speedbar[] = is_array($last_item) ? $last_item[1] : $last_item;
      }
      0
  24. foto
    Гость 26 февраля 2018 23:41 #
    Цитата: Sander
    Строку:
    if ($titl_e) {

    Заменить на:
    if ($titl_e && $dle_module != 'showfull') {


    Строки:
        $last_item = array_pop($speedbar);
        $speedbar[] = is_array($last_item) ? $last_item[1] : $last_item;

    Заменить на:
    if ($dle_module != 'showfull') {
        $last_item = array_pop($speedbar);
        $speedbar[] = is_array($last_item) ? $last_item[1] : $last_item;
    }

    Спасибо, очень помогли.
    0
  25. foto
    Гость 23 марта 2018 17:26 #
    Подскажите пожалуйста, как сделать что бы кликабельной была только последняя ссылка (ссылка на саму новость в которой стоит код), просто у меня гугл сейчас вот в таком виде выводит крошки: sait.com › sait.com › категория, а хочу что бы так было: sait.com › название статьи. Спасибо!
    0
    1. foto
      Администратор 23 марта 2018 18:06 #
      Вероятнее всего у вас что-то сделано неправильно.
      site.com два раза никак не должен выводиться. Проверьте, возможно он у вас прописан физически в самом шаблоне speedbar.tpl
      0
  26. foto
    Гость 23 марта 2018 18:28 #
    Не отображается у вас защитный код, поэтому пиши в новой ветке. Скррин - http://i3.imageban.ru/out/2018/03/23/bf918f2537b988c223cd4359deb5ae60.png

    В speedbar.tpl есть только такой код: speedbar. Вот такой исходный код страницы, где sait.com › sait.com › категория:

    <div id="dle-speedbar"><p><ul itemscope itemtype="http://schema.org/BreadcrumbList" class="speedbar"><li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a itemscope itemtype="http://schema.org/Thing" itemprop="item" href="http://мойсайт.com/" title=""><span itemprop="name">мойсайт.com</span></a><meta itemprop="position" content="1" /></li><li class="speedbar_sep">»</li><li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a itemscope itemtype="http://schema.org/Thing" itemprop="item" href="http://мойсайт/ссылка на категорию/" title=""><span itemprop="name">Название категории</span></a><meta itemprop="position" content="2" /></li><li class="speedbar_sep">»</li><li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><span itemprop="name">Название статьи</span><meta itemprop="position" content="3" /></li></ul></p></div>
    0
  27. foto
    Гость 25 марта 2018 12:07 #
    Sander не подскажите почему так гугл выводит крошки, это очень плохо смотрится. Ошибки в исходном коде нет? Я делал все по инструкции.
    0
    1. foto
      Администратор 25 марта 2018 14:40 #
      Без адреса сайта ничем не могу помочь. Нужно лично смотреть.
      0
  28. foto
    Гость 26 марта 2018 20:33 #
    Цитата: Sander
    Без адреса сайта ничем не могу помочь. Нужно лично смотреть.

    Адрес сайта предоставил, можете пожалуйста посмотреть есть-ли ошибка в коде? Или это гугл тупит!?
    0
    1. foto
      Администратор 27 марта 2018 19:56 #
      Согласно инструменту проверки структурированности данных - ошибок нету.
      https://search.google.com/structured-data/testing-tool
      Единственное, что мне не нравится, то что не отображаются ссылки.
      Да и просто категория первого уровня не отображается как ссылка в результатах поиска, что как бы тоже не совсем правильно.
      Чуть позже как будет свободное время проверю и потестирую более подробно.
      0
  29. foto
    Гость 3 апреля 2018 19:07 #
    Здравствуйте Sander, помогите хотя бы удалить название сайта в ссылке в футере, я думаю это поможет.

    Чтобы выглядело не так как сейчас: название сайта » категория » подкатегория, а в от так: категория » подкатегория! Пожалуйста)
    0
    1. foto
      Администратор 3 апреля 2018 19:09 #
      Строку:
      $speedbar = array( array( $config['http_home_url'], $config['short_title'], $config['home_title'] ) );

      Заменить на:
      $speedbar = array();

      Но я уверен, что дело не в этом. Даже не представляю как поисковик воспримет подобный спидбар...
      0
  30. foto
    Гость 3 апреля 2018 19:14 #
    Большое спасибо! Гугл кажет, что код валидный.
    0
  31. foto
    Гость 2 мая 2018 15:58 #
    Валидатор микроразметки от Яндекса для странички с этой новостью выдаёт ошибки.
    ОШИБКА: невозможно определить принадлежность данных полей. Возможны две причины: эти поля некорректно размещены, либо указан лишний атрибут itemprop
    ОШИБКА: Не выполнено обязательное условие для продуктовых сниппетов: поле offers отсутствует или пусто
    Это так и должно быть?
    0
    1. foto
      Администратор 2 мая 2018 21:16 #
      Я ориентировался на спецификацию гугла и schema.org
      Угодить яндексу у меня не получилось, хоть я и не старался особо.
      0
      1. foto
        Гость 16 мая 2018 16:23 #
        Если будет возможность - просьба подправить и под Яндекс. Хотя сам им и не пользуюсь, но в русскоязычной среде (а DLE распространён в основном в рунете) Яндекс - довольно популярный ресурс.
        0
        1. foto
          Администратор 16 мая 2018 16:30 #
          Предлагаю вам принять участие.
          Гугл предоставляет пример и спецификацию по оформлению хлебных крошек:
          https://developers.google.com/search/docs/data-types/breadcrumb

          У яндекса я нашел только тему:
          https://yandex.ru/blog/search/pravilnaya-mikrorazmetka-khlebnykh-kroshek-na-sayte-s-pomoschyu-schema-org

          Если найдете у них документацию - попробуйте совместить их и добиться правильной работы в обоих валидаторах.
          0
          1. foto
            Гость 17 мая 2018 02:02 #
            Одна из ошибок в валидаторе яндекса -
            поле http://ogp.me/ns#image отсутствует или пусто

            (в случае, если в новости вообще нет картинок).
            Можно использовать в таком случае картинку-заглушку (с логотипом сайта, к примеру), добавив meta property:
            www.blogovoe.ru/blog/ispravlyaem_oshibka_pole_httpogpmensimage.html
            Но вот как модифицировать ваш модуль, чтобы эта заглушка использовалась только в том случае, когда в новости отсутствует своя собственная картинка?
            0
            1. foto
              Администратор 17 мая 2018 13:31 #
              Никак. Вышеуказанная тема не имеет никакого отношения к микроразметке именно хлебных крошек.
              Там микроразметка полной новости.
              0
  32. foto
    Посетитель 21 июня 2018 17:33 #
    у меня при поиске в гугле , название сайта два раза отображается
    на самом сайте все правильно отображается
    0
  33. foto
    VIP 12 августа 2018 09:24 #
    У меня яндекс начал выдавать в хлебных крошках пагинацию и поиск.
    Выглядит так: Видео Модели Гифки Фото Поиск по сайту Загрузить еще
    В гугле нету. Там все нормально. Код пагинации в noindex.
    0
    1. foto
      Администратор 12 августа 2018 10:17 #
      Яндекс не поддерживает микроразметку.
      У них этот "спидбар" / "хлебные крошки" называется Навигационная цепочка
      Формируется навигационная цепочка автоматически.
      Т.е. нет возможности "подсказать" поисковику свою структуру сайта. Он сам на свое усмотрение все решает.


      Цитата: romanov
      Выглядит так: Видео Модели Гифки Фото Поиск по сайту Загрузить еще

      Это поисковик решил, что нет навигации и показывает быстрые ссылки, которые опять же он определил автоматически.
      0
      1. foto
        VIP 12 августа 2018 11:05 #
        Да, я понял из комментов выше, что у яндекса своя схема ... Просто свой случай написал. Месяца три назад Яндекс нормально выводил хлебные крошки, примерно полгода. Категории или новости, а сейчас вот добавил Поиск по сайту и Загрузить ещё. И раньше выводил в два столбика, а сейчас мелким шрифтом в один ряд. Я правильно понимаю, что хлебные крошки строятся на действиях на сайте? Типа на сайте часто используют Загрузить еще и Поиск по сайту?
        0
        1. foto
          Администратор 12 августа 2018 11:09 #
          Теоретически может быть. Но только в том случае, если на сайте установлена яндекс метрика. Или в теории если у пользователей яндекс браузер (но это маловероятно).
          А так - не знаю по каким алгоритмам вообще у них там что работает.
          Как вариант возможно анализируют какие ссылки не меняются на странице и просто выводят первые N-ссылок.
          +1
  34. foto
    Гость 4 сентября 2018 19:00 #
    Проверяю структурные данные и выдает ошибку в твоих крошках: "Необходимо указать значение для поля item". У себя такого не наблюдаешь?
    0
    1. foto
      Администратор 4 сентября 2018 19:06 #
      В данный момент я провожу эксперимент с этими крошками на своем сайте.
      Вариант с RDFa - да, выдает ошибку. Простая микроразметка ошибок не выдает.
      Жду когда гугл обновит данные в результатах выдачи. После этого обновлю код в статье.
      0
      1. foto
        Гость 19 сентября 2018 05:55 #
        Обычная микроразметка так же выдает
        item
        Необходимо указать значение для поля item.
        0
  35. foto
    Гость 12 сентября 2018 00:20 #
    Для последней (некликабельной крошки) ошибка Необходимо указать значение для поля item.
    0
  36. foto
    Гость 21 сентября 2018 17:13 #
    Здравствуйте, большое спасибо за проделанную работу, на данный момент валидатор показывает ошибку, item.
    Как это исправить?
    0
    1. foto
      Администратор 21 сентября 2018 18:56 #
      Я в курсе об ошибке с item.
      Все еще провожу эксперименты с гуглом. Доэкспериментировался, что теперь в результатах выдачи у меня крошки перестали отображаться.
      Сейчас жду очередного обновления, хочу убедиться чтобы выложить уже наверняка 100% правильно рабочий вариант.
      0
      1. foto
        Гость 27 сентября 2018 01:34 #
        Понятно, спасибо, вы это как то объявите? В новости укажете актуальную дату? или в комментах отпишитесь, что вышла новая версия кода? Поднимите новость на верх?
        0
      2. foto
        Клиент 7 ноября 2018 10:16 #
        Здравствуйте!

        Хотелось бы уточнить информацию о результатах эксперимента и стоит ли ждать обновленную версию в ближайшее время?
        0
        1. foto
          Администратор 7 ноября 2018 20:53 #
          Да что-то я чуток понять не могу.
          Крошки сделаны точь в точь со спецификацией, а в гугле на моем сайте крошки не отображаются.
          Сейчас запустил поддомен на индексирование. На свежем сайте точно правильно все покажет.
          0
          1. foto
            VIP 5 декабря 2018 07:16 #
            Есть результат эксперимента ? bowtie
            0
            1. foto
              Администратор 6 декабря 2018 12:09 #
              В целом да.
              Мне очень хотелось, чтобы в результатах поиска на первой странице самой категории так же отображались хлебные крошки. Но видимо это невозможно.
              А так все норм.
              0
  37. foto
    Посетитель 6 января 2019 00:37 #
    Здравствуйте. Большое спасибо за хак. Подскажите пожалуйста как можно изменить вывод крошек, дабы выводились все категории и под категории к которой принадлежит новость, так как Вы подсказывали здесь: https://dle-faq.ru/faq/phpquest/17095-kak-realizovat-vyvod-vseh-podkategoriy-v-speedbar.html

    Спасибо.
    0
    1. foto
      Администратор 7 января 2019 13:45 #
      Это немного проблематично.
      По крайней мере пока у меня нет желания этим заниматься.
      0
      1. foto
        Посетитель 7 января 2019 15:15 #
        Спасибо, если найдется время, добавите пожалуйста как вариант, буду благодарен. Еще раз спасибо
        0
  38. foto
    Гость 2 марта 2019 22:35 #
    Здравствуй, Sander.
    Вопрос следующий, последняя точка speedbar является текстом, а не ссылкой, валидатор видит 3 позиции (Сайт, категория, подкатегория), а итог в виде самого поста он не показывает как 4-ую позицию.
    0
    1. foto
      Гость 2 марта 2019 22:44 #
      В принципе, на некоторых он показывает конечное название в виде статьи, на некоторых - нет.
      0
    2. foto
      Администратор 3 марта 2019 11:48 #
      По большому счету я сам не знаю точно как именно должно быть.
      Есть одно довольно таки распространенное мнение, что страница не должна ссылаться сама на себя. Вот по этому принципу я и реализовал модуль.
      Хотя вот сейчас внимательнее присмотрелся к описаниям крошек на google и там последний элемент ссылается на себя же.
      Как буду создавать очередной тестовый сайт - сделаю там последний элемент тоже ссылкой. Посмотрю, как это будет выглядеть в гугле.
      0
      1. foto
        Гость 3 марта 2019 12:48 #
        По сути - да, не должна, однако именно гугл ссылкой выводит ту страницу, которая открыта, на удивление. Ну хорошо, будем ждать relaxed
        0
  39. foto
    Гость 24 марта 2019 21:32 #
    Помогите, как зделать так ?
    Главная - Категория - без Тайтла новости, и главная и категория кликабельные ссылки.
    0
    1. foto
      Администратор 25 марта 2019 17:42 #
      Выше кода со статьи вставить:
      if ($dle_module == 'showfull') $titl_e = '';
      0
  40. foto
    Гость 25 марта 2019 21:38 #
    Цитата: Sander
    Выше кода со статьи вставить:
    if ($dle_module == 'showfull') $titl_e = '';

    Нет ссылки на категорию .
    0
  41. foto
    Клиент 3 апреля 2019 17:00 #
    Спасибо за плагин! Полезный.
    0
  42. foto
    Гость 24 апреля 2019 10:54 #
    А не подскажете как убрать название подкатегории из хлебных крошек?
    0
    1. foto
      Администратор 24 апреля 2019 12:39 #
                  getBreadcrumbListCategories( $cat_info[$id]['parentid'], true );
              }

      Заменить на
                  getBreadcrumbListCategories( $cat_info[$id]['parentid'], true );
              } else
      0
  43. foto
    Гость 30 апреля 2019 23:03 #
    Подскажите, пожалуйста.
    Когда 2 элемента в хлебных крошках - размечается только один
    соответственно разметка выглядит так http:// joxi.ru/brRM4dQh7NyKJA
    а это некорректно
    как второй элемент разметить?
    0
  44. foto
    Гость 9 мая 2019 14:40 #
    подскажите, пожалуйста
    проблему так и не решил
    0
    1. foto
      Администратор 9 мая 2019 14:51 #
      https://developers.google.com/search/docs/data-types/breadcrumb?hl=ru

      Правила
      Разметка должна соответствовать общим правилам в отношении структурированных данных и содержать как минимум одну строку навигации (не для целевой страницы),


      И я придерживаюсь того же мнения, что целевая страница не должна быть элементом навигации хлебных крошек. Если у вас другое мнение - вы можете заказать индивидуальную разработку согласно вашим пожеланиям.
      0
      1. foto
        Гость 9 мая 2019 15:09 #
        По вашему на странице "Главная - Страница" не должно хлебных крошек быть вообще?) Или они должны быть из одного элемента - Главная
        0
        1. foto
          Администратор 9 мая 2019 15:15 #
          Не существует однозначно верного решения. Я придерживаюсь своей теории. Она может быть и ошибочна, но пока что у меня нет оснований считать иначе.

          Буду рад, если вы покажете хоть один сайт, в котором гугл отображает целевую страницу в хлебных крошках, когда навигационная цепочка состоит из одной страницы: "Главная - Cтраница"
          0
          1. foto
            Гость 9 мая 2019 15:18 #
            что значит гугл отображает страницу в хлебных крошках? что вы подразумеваете под этим? в выдаче поисковой ?
            0
      2. foto
        Гость 9 мая 2019 15:15 #
        посмотрите примеры по вашей же ссылке
        prntscr.com/nmef7p
        0
  45. foto
    Гость 2 июня 2019 11:15 #
    Здравствуйте! У меня DLE 13.2 воспользовался вашим плагином, но вместо вот такого вывода speedbar:
    MuZZona ⇒ Музыка ⇒ Рок ⇒ Rammstein — RADIO - Слушать онлайн, Скачать mp3 бесплатно
    С вашим плагином выводится так:
    MuZZona

    Музыка

    Рок

    Rammstein — RADIO - Слушать онлайн, Скачать mp3 бесплатно
    0
    1. foto
      Администратор 2 июня 2019 12:33 #
      Внешний вид нужно настроить в файле стилей.
      Пример стилей прописан в статье.
      0
      1. foto
        Посетитель 2 июня 2019 12:43 #
        Если еще в стилях Шарить( вообще бы классно было!
        0
        1. foto
          Администратор 2 июня 2019 12:46 #
          Именно поэтому в статье приведен образец стилей для "быстрого старта".
          Можно скопировать и вставить в любой файл стилей подключенном к шаблону и все будет отображаться вполне приемлемо.
          0
          1. foto
            Посетитель 2 июня 2019 12:50 #
            вообще то я так и сделал в самом начале
            0
          2. foto
            Посетитель 3 июня 2019 10:13 #
            Спасибо, Все работает, мой бок был, забыл КЭШ браузера почистить(
            0
  46. foto
    Посетитель 2 июня 2019 12:50 #
    только что со стилями что без них, одно и тоже
    0
  47. foto
    Гость 18 июля 2019 18:41 #
    Из-за тега <li> в коде, дизайн сыпется, даже с добавлением вашего кода стилей.
    Просто в шаблоне прописан своеобразный тег ЛИ, который выводит жирную точку и теперь она в спидбаре и убрать её никак не получается (((
    Можно ли обойтись без этого тега li в коде ?
    0
    1. foto
      Администратор 19 июля 2019 12:17 #
      Проще прописать одну строку в файле стилей, чем менять разметку в коде.
      По правкам шаблона вам следует обратиться к автору вашего шаблона.
      0
      1. foto
        Гость 24 июля 2019 10:01 #
        Автор шаблона уже давно потерялся, так что к нему никак не обратиться.
        Какую строчку можно добавить в стиль, чтобы игнорировались настройки данного тега заданные в шаблоне и выводилось именно то, что нужно для крошек ?
        0
  48. foto
    Гость 24 июля 2019 11:59 #
    Хотя в принципе разобрался вроде...
    Частично удалось решить проблему через
    all: initial;

    Между блоками точки исчезли, но одна в начале осталась.
    0
  49. foto
    Гость 22 октября 2019 00:21 #
    Для 13.3 я так понимаю уже неактуально?
    0
    1. foto
      VIP 22 января 2020 09:14 #
      да там уже поправили !
      0
  50. foto
    Гость 21 января 2020 22:32 #
    Гугл с апреля перестанет поддерживать data-vocabulary.org schema deprecated. Уже разослал письма в консоле.
    Sander можете теперь сделать гайд, как сделать для Schema.org?????
    0
  51. foto
    VIP 21 января 2020 23:28 #
    Цитата: Softg
    Гугл с апреля перестанет поддерживать data-vocabulary.org schema deprecated. Уже разослал письма в консоле.
    Sander можете теперь сделать гайд, как сделать для Schema.org?????

    То же письмо прилетело...
    0
    1. foto
      Клиент 22 января 2020 01:05 #
      Делайте все по этому гайду и отправляйте на перепроверку.
      0
      1. foto
        Клиент 23 января 2020 15:24 #
        сделал все по гайду, но видимо из-за не стандартного шаблона весь стиль спидбара поломался
        0
  52. foto
    Гость 22 января 2020 11:28 #
    Большое спасибо разрабу, помогло!
    0
  53. foto
    Гость 22 января 2020 13:11 #
    Помогите, на одном шаблоне с добавлением css все стало отлично, а вот на стандартом шаблоне DLe "Green", не получается сделать в одну строку.
    CSS добавил.
    http ://i.piccy.info/i9/4db1b7c7f96ac7b5be2e9d13c92463e1/1579691411/40855/1358257/123.jpg вот скриншот.
    0
    1. foto
      Клиент 22 января 2020 16:31 #
      Скорее для шаблона есть старые стили speedbar'а попробуйте найти их и отредактировать.
      0
      1. foto
        Гость 22 января 2020 21:08 #
        А все, спасибо, совсем забыл что на сайте стоял cloudflare
        0
  54. foto
    Посетитель 23 января 2020 06:59 #
    Может кто может подсказать, DLE 11.1 вставляю код из новости, выскакивает ошибка
    Parse error: syntax error, unexpected '[' in /www/rufull/data/www/rsload.net/engine/engine.php on line 1074

    строка 1074
      $speedbar[] = [$config['http_home_url'] . get_url( $id ) . '/', $cat_info[$id]['name'], $cat_info[$id]['metatitle']];
    0
    1. foto
      Администратор 23 января 2020 12:08 #
      Пора обновить php. Хотя бы до 5.6
      0
  55. foto
    Посетитель 23 января 2020 10:15 #
    Спасибо, всё работает.
    0
  56. foto
    Гость 23 января 2020 16:58 #
    Поставил плагин на DLE 13.2 - валидатор выдает ошибку: Необходимо указать значение для поля item. Если переключить на RDFa то выдает: Необходимо указать значение для поля id. Подскажите как можно исправить.
    0
  57. foto
    Гость 23 января 2020 17:10 #
    В исходном коде получается такая строка:
    <div id="dle-speedbar"><ul itemscope itemtype="http://schema.org/BreadcrumbList" class="speedbar"><li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a itemprop="item" href="http://131.lokal/" title="DataLife Engine"><span itemprop="name">Демонстрационный сайт</span></a><meta itemprop="position" content="1" /></li><li class="speedbar_sep">&raquo;</li><li itemprop="itemListElement" itemscope itemtype="http://schema.org/ListItem"><a itemprop="item" href="http://131.lokal/made_of_wood/" title="Поделки из дерева"><span itemprop="name">Поделки из дерева</span></a><meta itemprop="position" content="2" /></li><li class="speedbar_sep">&raquo;</li><li>Выпиливание лобзиком</li></ul>
    </div>
    0
  58. foto
    Гость 23 января 2020 17:45 #
    Не подскажите как для
    $do == 'collections
    Сделать вывод?
    0
  59. foto
    Посетитель 8 февраля 2020 07:46 #
    Здраствуйте Уважаемый Sander !

    Всё отлично работает, за исключением одного"НО"!
    Появился один неприятный нюанс: При удалении новости с сайта напись "На главную"(Информация
    Выбранная Вами публикация была успешно удалена.) перестала быть кликабельной, а до установки Вашего кода она была кликабельна и можно было с удалённой страницы перейти на главную. Подскажите пожалуйста как вернуть кликабельность в слово "На главную",т.е. чтобы перейти после процедуры удаления новости на главную?

    С Уважением admin2ruka!
    0
    1. foto
      Администратор 8 февраля 2020 13:42 #
      Обновил код.
      +2
      1. foto
        Посетитель 8 февраля 2020 14:53 #
        Большое Вам Спасибо! Теперь - супер, слово На главную - кликабельно.
        0
  60. foto
    Посетитель 12 февраля 2020 11:32 #
    Здраствуйте Уважаемый Sander !

    Это опять Я. У меня опять проблема:
    Если кто-то голосует по рейтингу"Оценка"(звёздочки) ,то Гугл-валидатор выдаёт новую шибку такого вида:
    Thing – недопустимый тип целевого объекта для свойства itemReviewed.

    Проверял в полной новости без голосования - ошибки нет!

    Скажите пожалуйста что исправить в коде переделанном Вами Выше в новости? Не ругается ли Гугл тут на микроразметку рейтинга schema.org ?
    0
  61. foto
    Клиент 25 марта 2020 22:25 #
    Здравствуйте, как в обновленном коде (вариант 2) "хлебные крошки" убрать название новости?
    0
    1. foto
      Клиент 25 марта 2020 22:39 #
      в engine/engine.php найти:
      if ($titl_e) $s_navigation .= " {$config['speedbar_separator']} " . $titl_e;

      заменить на:
      if ($titl_e) $s_navigation .= " {$config['speedbar_separator']} ";

      Но остается "›" значок в конце строки, как можно пофиксить?

      SanDev.pro › Datalife Engine ›
      0
      1. foto
        Администратор 26 марта 2020 00:29 #
        Удалить строку вовсе:
        if ($titl_e) $s_navigation .= " {$config['speedbar_separator']} " . $titl_e;
        0
        1. foto
          Клиент 26 марта 2020 01:11 #
          Ошибка Parse error: syntax error, unexpected '}' in /engine/engine.php on line 1000
          0
          1. foto
            Клиент 26 марта 2020 01:45 #
            Вопрос решен.

            if ($titl_e) {
            		$s_navigation .= " {$config['speedbar_separator']} " . $titl_e;
            	} else {
            		if ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ){
            			$page_extra = " {$config['speedbar_separator']} ".$lang['news_site']." ".intval($_GET['cstart']);
            		} else $page_extra = '';
            		$s_navigation .= $page_extra;
            }


            меняем на

            
            if ( isset($_GET['cstart']) AND intval($_GET['cstart']) > 1 ){
            	$page_extra = " {$config['speedbar_separator']} ".$lang['news_site']." ".intval($_GET['cstart']);
            } else $page_extra = '';
            $s_navigation .= $page_extra;
            
            0
  62. foto
    Посетитель 21 апреля 2020 19:27 #
    На DLE 14.0 на главной странице и в категориях всё отлично, на полной новости не срабатывает ни первый, ни второй вариант.
    Проверка структурированных данных в гугле выводит красным шрифтом «Thing – недопустимый тип целевого объекта для свойства itemReviewed.».
    Подскажите пожалуйста, как решить проблему в полной новости?
    0
    1. foto
      Клиент 14 мая 2020 20:49 #
      так они ж поправили отображение крох в 14.0 версии. смысл ставить плагин
      0
Добавить комментарий

Внимание! Все сообщения касающиеся техподдержки будут удалены или проигнорированы

Attention! All messages asking for technical support will be removed or ignored

  • Логин
  • E-mail (не обязательно)
Повторите рисунок:
antibot
© Sander-Development. 2009-2024.
При копировании, ссылка на источник обязательна.