WordPress如何创建按照字母排序的tags页面

Published
2023-01-25
浏览次数 :  275

很多站长都对于tags不陌生,因为tag既可以让网站有分类,有标签,有专题,又对于网站seo来讲,帮助十分巨大,能让搜索引擎更好的理解网站,从而更快的进行收录,来提高网站的权重,那么,如何创建一个条理井然的网站,让网站看着更加专业呢。

我来教大家如何创建一个按照英文字母排序的标签页面。

首先,新建一个任意名字的文件,比方说Tags-zimu.php。 然后创建页面模板抬头,

<?php

/*

Template Name: Alphabetical Tag List

*/

然后在后台创建自定义页面,比方说tags.

在Tags-zimu.php里面,创建必要的功能性代码,首先我们创建英文字母数组,

// create an array of the alphabet

$alphabet = range(‘A’, ‘Z’);

然后我们在英文字母数组进行循环,

foreach($alphabet as $letter) { }

在循环里面添加进去代码即可,添加到foreach() {} 里面:

global $wpdb;
$tags = $wpdb->get_results("SELECT t.*, tt.* 
FROM $wpdb->terms t 
INNER JOIN $wpdb->term_taxonomy tt 
ON t.term_id = tt.term_id 
WHERE tt.taxonomy = 'post_tag'
AND t.name LIKE '" . $wpdb->esc_like( $letter ) . "%' 
ORDER BY t.name ASC" );
   
    // check if there are any tags
    if($tags) {
        echo '<h2>'.$letter.'</h2>';
        echo '<div class="recommend_list mod_list" id="main_list"><ul class="article-list clear">';
        
        // loop through the tags and display them
        foreach($tags as $tag) {
            echo '<li class="post_part clear"><a href="'.get_tag_link($tag->term_id).'">'.$tag->name.'</a></li>';
        }
        
        echo '</ul></div>';
    }

我试过很多种方式来查询不同字母下以该字母开头的tag, 都不管用,只有通过直接从数据表查询并通过INNER JOIN方式才有用。


标签:, , ,
Top