drupal term pagas中没有rel =“next”和rel =“prev”

时间:2018-04-10 10:26:03

标签: drupal drupal-7

如何以编程方式在drupal-7术语页面中添加rel next和previous?谷歌的重要性有多重要?

我的一些页面列在这里:

کاردستی

سوپ ساده

عکس کودک

کاردستی

کاردستی

1 个答案:

答案 0 :(得分:2)

作为一个模块我没有自己开发模块的解决方案。 我希望它可以帮到你

首先我们使用hook_preprocess_html 我检查了这个页面是否是一个术语页面

if (arg(0) == 'taxonomy' && arg(1) == 'term') {

然后使用页面参数和函数taxonomy_select_nodes,您可以找到您的页面以及下一页和prevoius页面的内容 但其中一个重要的是,

  • 第一页没有上一页
  • 最后一页没有下一页
  • 并且没有参数page = 1的页面,这是第一页

    function your_theme_preprocess_html(&$variables) {
    
    if (arg(0) == 'taxonomy' && arg(1) == 'term') {
    
        $term = taxonomy_term_load(arg(2));
    
        if( $_GET && $_GET['page'] && is_numeric(@$_GET['page']) ){
            $prev = $_GET['page']-1;
            $next = $_GET['page']+1;
            $url = url('taxonomy/term/'.arg(2));
            if( $_GET['page'] > 1 ){
                $head_link  = array(
                    'rel' => 'prev',
                    'href' => 'http://yourdomain.com'.$url.'?page='.$prev
                );
                drupal_add_html_head_link($head_link);
            }
            if( $_GET['page'] == 1 ){
                $head_link  = array(
                    'rel' => 'prev',
                    'href' => 'http://yourdomain.com'.$url
                );
                drupal_add_html_head_link($head_link);
            }
    
            $numbers = taxonomy_select_nodes( arg(2),true ,1000 );
            if( count($numbers) > $next * 100 ){                
                $head_link  = array(
                    'rel' => 'next',
                    'href' => 'http://yourdomain.com'.$url.'?page='.$next
                );
                drupal_add_html_head_link($head_link);
            }
    
        }
        else {
            $numbers = taxonomy_select_nodes( arg(2),true ,1000 );
            if( count($numbers) > 100 ){                
                $url = url('taxonomy/term/'.arg(2));
                $head_link  = array(
                    'rel' => 'next',
                    'href' => 'http://yourdomain.com'.$url.'?page=1'
                );
                drupal_add_html_head_link($head_link);
            }
        }
    
    }
    }
    

这个函数taxonomy_select_nodes真的很棒,你给它一个术语的“tid”,它会告诉你如何用这个术语标记节点。

甚至可以使用hook_preprocess_html

将类添加到body

在主题

中的template.php文件中写下所有这些代码