Скрыть объявление
ВАШИ ПРАВА ОГРАНИЧЕНЫ!

Зарегистрируйтесь на форуме, чтобы стать полноценным участником сообщества!

Микроразметка на тематику кино по версии schema.org

Тема в разделе "Модули DLE", создана пользователем MaHarder, 17 янв 2016.

17.01.16 в 03:10
24.04.24 в 00:31
177
34.727
15
  1. nylmen

    Команда форума VIP Кинотрафик v2

    Регистрация:
    2 ноя 2015
    Сообщения:
    2.574
    Лучших ответов:
    0
    Рейтинги:
    +702 / 2 / -0
    Разметке до фени название твоего доп поля.
    У меня не ругается. Ещё конечно не доделано до конца правда)
    Полей с перекрестными ссылками у меня помдее вообще нету.
     
  2. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
    Поля, которые не используются как перекрёстные ссылки, можно как угодно называть. То там да, пс до лампочки.
     
  3. nylmen

    Команда форума VIP Кинотрафик v2

    Регистрация:
    2 ноя 2015
    Сообщения:
    2.574
    Лучших ответов:
    0
    Рейтинги:
    +702 / 2 / -0
    Приведи пример доп поля которое используется как перекрёстная ссылка?
     
  4. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
  5. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
     
  6. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
    Посмотрел разметку http://ogp.me/, то проще будет вот так.
    в main.tpl как написано,а в fullstory это
    Код:
    {include file="engine/metagen.php?a=add&r=og&p=og:title&v={title}"}
    {include file="engine/metagen.php?a=add&r=og&p=og:url&v={full-link}"}
    {include file="engine/metagen.php?a=add&r=og&p=og:image&v=ПОСТЕР"}
    {include file="engine/metagen.php?a=add&r=og&p=og:image:type&v=image/jpeg"}
    {include file="engine/metagen.php?a=add&r=og&p=og:description&v={full-story}"}
    {include file="engine/metagen.php?a=add&r=og&p=og:video&v=ССЫЛКА НА ВИДЕО"}
    {include file="engine/metagen.php?a=add&r=og&p=og:video:height&v=ВЫСОТА ПЛЕЕРА"}
    {include file="engine/metagen.php?a=add&r=og&p=og:video:width&v=ШИРИНА ПЛЕЕРА"}
    {include file="engine/metagen.php?a=add&r=og&p=og:duration&v=[xfvalue_ПРОДОЛЖИТЕЛЬНОСТЬ]"}
    {include file="engine/metagen.php?a=add&r=og&p=og:video:type&v=ТИП ВИДЕО"}
    {include file="engine/metagen.php?a=add&r=og&p=og:locale&v=ru_RU"}
    {include file="engine/metagen.php?a=add&r=og&p=article:published_time&v={date=Y-m-d}"}
    
    открываем show.full.php и там проводим след. махинации
    ищем дважды
    Код:
    if( $config['allow_alt_url'] ) $value3[] = "<a 
    и
    Код:
    else $value3[] = "<a 
    и после
    Код:
    property=\"og:" . urlencode( $preg_safe_name ) . "\"
    тут идут расхождения в тегах, к примеру в схеме сценарист это creator, а в opengraph это writer. ПС будет ругаться
     
  7. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.403
    Лучших ответов:
    32
    Рейтинги:
    +4.017 / 114 / -0
    не обязательно создавать именно такие названия для полей, всегда можно проверку сделать в файле. и да, вся разметка (meta, link) должна быть только в пределах тега head никак за ним и никак не в body
     
    • Нравится Нравится x 1
  8. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
    с опенграф такое прокатит, но не с схемой.
    в схеме прикрепляется библиотека, по которой ПС ориентируется, к примеру
    Код:
    <div itemscope itemtype="http://schema.org/Movie">
    а див ты не поставишь в head. тем более, на самом сайте схемы все примеры работают таким образом. может я ошибаюсь, но иначе бы поисковик не видел бы разметку
     
  9. pouf

    pouf Местный

    Регистрация:
    5 окт 2015
    Сообщения:
    2.172
    Лучших ответов:
    1
    Рейтинги:
    +414 / 0 / -0
    а ну расскажи что там за такие чудо разметки, прямо сейчас полечу делать
     
  10. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.403
    Лучших ответов:
    32
    Рейтинги:
    +4.017 / 114 / -0
    я не говорил о дивах я писал о meta и линках, притом все прокатит если делать проверку на соотношения поля и делать под себя
    PHP:
    if($value[0] == "acteru")
    {
    //..... код для актеров
    }
     
  11. Pavel

    Pavel Местный

    Регистрация:
    7 ноя 2015
    Сообщения:
    1.680
    Лучших ответов:
    0
    Рейтинги:
    +785 / 0 / -0
    Согласен и тоже это писал. Однако, как бы это не выглядело долбоящерством: http://schema.org/Movie последний пример
    [​IMG]
     
  12. Romantv

    Забанен

    Регистрация:
    17 июл 2015
    Сообщения:
    6.989
    Лучших ответов:
    6
    Рейтинги:
    +1.996 / 141 / -0
    MaHarder я под разметку ни чего не правил в этом файле show.full.php у меня все нормально.
     
  13. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
    Я в программирования не очень силён, поэтому обходить так.
    Можно, за комп сяду и покажу что я имею ввиду.
    Я о том же. Можно было-бы подставить хак ноувер подставить и не мучиться. Однако система совершенно по другому обрабатывает все данные. Он без ссылок на каталог (как ОГ) не знает к чему определить данные. Дилема. Но они решили всё так
     
  14. Romantv

    Забанен

    Регистрация:
    17 июл 2015
    Сообщения:
    6.989
    Лучших ответов:
    6
    Рейтинги:
    +1.996 / 141 / -0
    единственное где я под разметку правил так это тут
     

    Вложения:

  15. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
    давай я приведу пример ма актёрах- применяется к любому атрибуту, которое имеет несколько значений. в каталоге movie можно вывести как каждого актёра по отдельности, так и в списке.
    пример:
    Код:
    <div itemscope itemtype="http://schema.org/Movie">
    <span itemprop="actors">Мэрлин Хэссет, Бо Бриджес, Белинда Монтгомери, Нэн Мартин, Уильям Брайант, Дэбни Коулмен, Билл Винт, Хэмптон Фанчер, Уильям Рорик, Дори Бреннер</span>
    </div>
    это список актёров, который разделяется через запятую.

    если же выводит так:
    Код:
    <div itemscope itemtype="http://schema.org/Movie">
    <span itemprop="actor">Мэрлин Хэссет, Бо Бриджес, Белинда Монтгомери, Нэн Мартин, Уильям Брайант, Дэбни Коулмен, Билл Винт, Хэмптон Фанчер, Уильям Рорик, Дори Бреннер</span>
    </div>
    (заметь, значение поменялось с actors на actor) то система будет видеть Мэрлин Хэссет, Бо Бриджес, Белинда Монтгомери, Нэн Мартин, Уильям Брайант, Дэбни Коулмен, Билл Винт, Хэмптон Фанчер, Уильям Рорик, Дори Бреннер как одно целое значение. а если выводить с махинациями, что я привёл к примеру, то получается вот так
    Код:
    <div itemscope itemtype="http://schema.org/Movie">
    <b>В ролях:</b> <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%9C%D1%8D%D1%80%D0%BB%D0%B8%D0%BD+%D0%A5%D1%8D%D1%81%D1%81%D0%B5%D1%82" title="Поиск по Мэрлин Хэссет">Мэрлин Хэссет</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%91%D0%BE+%D0%91%D1%80%D0%B8%D0%B4%D0%B6%D0%B5%D1%81" title="Поиск по Бо Бриджес">Бо Бриджес</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%91%D0%B5%D0%BB%D0%B8%D0%BD%D0%B4%D0%B0+%D0%9C%D0%BE%D0%BD%D1%82%D0%B3%D0%BE%D0%BC%D0%B5%D1%80%D0%B8" title="Поиск по Белинда Монтгомери">Белинда Монтгомери</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%9D%D1%8D%D0%BD+%D0%9C%D0%B0%D1%80%D1%82%D0%B8%D0%BD" title="Поиск по Нэн Мартин">Нэн Мартин</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%A3%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC+%D0%91%D1%80%D0%B0%D0%B9%D0%B0%D0%BD%D1%82" title="Поиск по Уильям Брайант">Уильям Брайант</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%94%D1%8D%D0%B1%D0%BD%D0%B8+%D0%9A%D0%BE%D1%83%D0%BB%D0%BC%D0%B5%D0%BD" title="Поиск по Дэбни Коулмен">Дэбни Коулмен</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%91%D0%B8%D0%BB%D0%BB+%D0%92%D0%B8%D0%BD%D1%82" title="Поиск по Билл Винт">Билл Винт</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%A5%D1%8D%D0%BC%D0%BF%D1%82%D0%BE%D0%BD+%D0%A4%D0%B0%D0%BD%D1%87%D0%B5%D1%80" title="Поиск по Хэмптон Фанчер">Хэмптон Фанчер</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%A3%D0%B8%D0%BB%D1%8C%D1%8F%D0%BC+%D0%A0%D0%BE%D1%80%D0%B8%D0%BA" title="Поиск по Уильям Рорик">Уильям Рорик</a>, <a itemprop="actor" href="http://kinospace.org/search/actor/%D0%94%D0%BE%D1%80%D0%B8+%D0%91%D1%80%D0%B5%D0%BD%D0%BD%D0%B5%D1%80" title="Поиск по Дори Бреннер">Дори Бреннер</a>
    </div>
    у каждого актёра своя ссылка.
    2016-01-17 19-21-26 Screenshot.png
    в идеале значение должно выводится так
    Код:
    <div itemprop="actor" itemscope itemtype="http://schema.org/Person"><a itemprop="url" href="http://kinospace.org/search/actor/%D0%94%D0%BE%D1%80%D0%B8+%D0%91%D1%80%D0%B5%D0%BD%D0%BD%D0%B5%D1%80" title="Поиск по Дори Бреннер"><span itemprop="name">Дори Бреннер</span></a></div>
    2016-01-17 19-24-14 Screenshot.png
    однако я не силён в программировании, иначе поправил бы ситуацию. потому что, если есть для значения отдельная ветка в каталогах схемы орг, то лучше её так и выводить.

    если, вдруг, кого-то (программиста) заинтересует написать обработчик, то было бы круто. а так, присваиваем всё к ветке муви
     
  16. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.403
    Лучших ответов:
    32
    Рейтинги:
    +4.017 / 114 / -0
    На счет указаний я не делал и делать не буду, сделал для своего проекта только og, ya разметку
    upload_2016-1-17_20-45-37.png
     
  17. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
    эта разметка, как я писал выше, совершенно по другому построена, чем схема.орг
     
  18. PunPun

    VIP Кинотрафик v2

    Регистрация:
    11 июн 2015
    Сообщения:
    7.403
    Лучших ответов:
    32
    Рейтинги:
    +4.017 / 114 / -0
    shema для контента, og и ya для страницы.
     
    • Нравится Нравится x 1
  19. MIKE_FM

    MIKE_FM Местный

    Регистрация:
    27 дек 2015
    Сообщения:
    1.884
    Лучших ответов:
    2
    Рейтинги:
    +370 / 43 / -0
    Полезная темка. Давно искал )
     
  20. TopicStarter Overlay
    MaHarder

    MaHarder Местный

    Регистрация:
    9 июн 2015
    Сообщения:
    1.054
    Лучших ответов:
    0
    Рейтинги:
    +334 / 0 / -0
    Дополнение, хлебные крошки или спидбар
    Для начала, хочу сказать, что проделывал всё это уже после того, как прошёлся мануалом от @Gameer по движку и советую сделать сначала его, потом эти шаги.
    1. правим движок: http://zerocoolpro.biz/forum/threads/seo-optimizacija-dle-polnyj-sbornik.2046/
    2. открываем main.tpl. находим тег body и меняем его так
    Код:
    <body itemscope itemtype="http://schema.org/WebPage">
    3. открываем файл с вашими стилями (у кого шаблон на бутстрапе3, могут пропустить) и в самый конец ставим:
    Код:
    .breadcrumb {
        padding: 8px 15px;
        margin-bottom: 20px;
        list-style: none;
        background-color: #f5f5f5;
        border-radius: 4px;
    }
    .breadcrumb>li {
        display: inline-block;
    }
    .breadcrumb>li+li:before {
        padding: 0 5px;
        color: #ccc;
        content: "/\00a0";
    }
    
    /\00a0 можно заменить на \00BB
    это заменит / на »
    4. Открываем speedbar.tpl и всё меняем на {speedbar}
    5. Открываем engine.php и меняем полностью функцию
    Код:
    /*
    =====================================================
     Формирование speedbar 
    =====================================================
    */
    if ($config['speedbar'] AND !$view_template ) {
    ...
    }
    
    на
    Код:
    /*
    =====================================================
     Формирование speedbar 
    =====================================================
    */
    if ($config['speedbar'] AND !$view_template ) {
       
        if($dle_module == "main")
            $s_navigation = "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><span itemprop=\"name\">" . $config['short_title'] . "</span></span></li>";
        else
            $s_navigation = "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><a href=\"{$config['http_home_url']}\" itemprop=\"url\"><span itemprop=\"name\">" . $config['short_title'] . "</span></a></span></li>";
        if( $config['start_site'] == 3 AND $_SERVER['QUERY_STRING'] == "" AND !$_POST['do']) $titl_e = "";
    
        if($dle_module == "cat")
            $s_navigation .= "" . get_breadcrumbcategories ( (array)$category_id, $config['speedbar_separator'] );
        else if($dle_module == "showfull")
            $s_navigation .= "" . get_breadcrumbcategories ( $id_cat, $config['speedbar_separator'] );
       
        if ($nam_e && $dle_module != "cat") $s_navigation .= "" . $nam_e;
        elseif ($do == 'tags') {
           
            if ($config['allow_alt_url']) $s_navigation .= "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><a href=\"" . $config['http_home_url'] . "tags/\" itemprop=\"url\"><span itemprop=\"name\">" . $lang['tag_cloud'] . "</span></a></span></li>" . $tag;
            else $s_navigation .= "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><a href=\"?do=tags\" itemprop=\"url\"><span itemprop=\"name\">" . $lang['tag_cloud'] . "</span></a></span></li>" . $tag;
    
        }
       
        if ($titl_e) $s_navigation .= "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><span itemprop=\"name\">" . $titl_e . "</span></span></li>";
        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->load_template ( 'speedbar.tpl' );
        $tpl->set ( '{speedbar}', '<ol class="breadcrumb" itemscope itemtype="http://schema.org/BreadcrumbList" id="dle-speedbar">' . stripslashes ( $s_navigation ) . '</ol>' );
        $tpl->compile ( 'speedbar' );
        $tpl->clear ();
    
    }
    
    6. открываем engine/modules/functions.php и меняем полностью функцию
    Код:
    function get_breadcrumbcategories($id, $separator="&raquo;") {
    ....
    }
    на
    Код:
    function get_breadcrumbcategories($id, $separator="&raquo;") {
       
        global $cat_info, $config, $PHP_SELF, $dle_module;
    
        if( ! $id ) return;
    
        $id = end($id);
       
        $parent_id = $cat_info[$id]['parentid'];
       
        if($dle_module != "cat")
            $list = "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><a href=\"" . $config['http_home_url'] . get_url( $id ) . "\" itemprop=\"url\"><span itemprop=\"name\">{$cat_info[$id]['name']}</span></a></span></li>";
        else
            $list = "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><span itemprop=\"name\">{$cat_info[$id]['name']}</span></span></li>";
    
        while ( $parent_id ) {
           
            if($dle_module != "cat")
                $list = "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><a href=\"" . $config['http_home_url'] . get_url( $parent_id ) . "\" itemprop=\"url\"><span itemprop=\"name\">{$cat_info[$parent_id]['name']}</span></a></span></li>" . $list;
            else
                if($id != $cat_info[$parent_id]['id'])
                    $list = "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><a href=\"" . $config['http_home_url'] . get_url( $parent_id ) . "\" itemprop=\"url\"><span itemprop=\"name\">{$cat_info[$parent_id]['name']}</span></a></span></li>" . $list;
                else
                    $list = "<li><span itemprop=\"itemListElement\" itemscope itemtype=\"http://schema.org/ListItem\"><span itemprop=\"name\">{$cat_info[$parent_id]['name']}</span></span></li>" . $list;
           
            $parent_id = $cat_info[$parent_id]['parentid'];
           
            if($parent_id) {
                if( $cat_info[$parent_id]['parentid'] == $cat_info[$parent_id]['id'] ) break;
            }   
        }
       
        return $list;
    }
    
    потом обновлю шапку
     
    • Нравится Нравится x 3
Похожие темы
  1. Sardorbek
    Ответов:
    21
    Просмотров:
    1.985
Загрузка...
Яндекс.Метрика