下面由WordPress教程栏目给大家介绍WordPress增加网站地图的方法,希望对需要的朋友有所帮助!

先说一句口号:能用代码解决的,坚决不用插件!
WordPress的网站地图用一般的生成工具,生成之后都不能用,比如织梦我常用sitemapx,结果放在WordPress就出错了。
WordPress生成网站地图的插件也有很多,大家可以自行百度,这里主要是讲利用代码生成。
1.先将以下代码将保存为 sitemap.php,传到网站根目录。
<?php
require('./wp-blog-header.php');
header("Content-type: text/xml");
header('HTTP/1.1 200 OK');
$posts_to_show = 1000;
echo '<?xml version="1.0" encoding="UTF-8"?>';
echo '<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">'
?>
<!-- generated-on=<?php echo get_lastpostdate('blog'); ?> Diy By 独立站大学(http://dulizhandaxue.com)-->
<url>
<loc><?php echo get_home_url(); ?></loc>
<lastmod><?php $ltime = get_lastpostmodified(GMT);$ltime = gmdate('Y-m-d\TH:i:s+00:00', strtotime($ltime)); echo $ltime; ?></lastmod>
<changefreq>daily</changefreq>
<priority>1.0</priority>
</url>
<?php
/* 文章页面 */
$myposts = get_posts( "numberposts=" . $posts_to_show );
foreach( $myposts as $post ) { ?>
<url>
<loc><?php the_permalink(); ?></loc>
<lastmod><?php the_time('c') ?></lastmod>
<changefreq>monthly</changefreq>
<priority>0.6</priority>
</url>
<?php } /* 文章循环结束 */ ?>
<?php
/* 单页面 */
$mypages = get_pages();
if(count($mypages) > 0) {
foreach($mypages as $page) { ?>
<url>
<loc><?php echo get_page_link($page->ID); ?></loc>
<lastmod><?php echo str_replace(" ","T",get_page($page->ID)->post_modified); ?>+00:00</lastmod>
<changefreq>weekly</changefreq>
<priority>0.6</priority>
</url>
<?php }} /* 单页面循环结束 */ ?>
<?php
/* 博客分类 */
$terms = get_terms('category', 'orderby=name&hide_empty=0' );
$count = count($terms);
if($count > 0){
foreach ($terms as $term) { ?>
<url>
<loc><?php echo get_term_link($term, $term->slug); ?></loc>
<changefreq>weekly</changefreq>
<priority>0.8</priority>
</url>
<?php }} /* 分类循环结束 */?>
<?php
/* 标签(可选) */
$tags = get_terms("post_tag");
foreach ( $tags as $key => $tag ) {
$link = get_term_link( intval($tag->term_id), "post_tag" );
if ( is_wp_error( $link ) )
return false;
$tags[ $key ]->link = $link;
?>
<url>
<loc><?php echo $link ?></loc>
<changefreq>monthly</changefreq>
<priority>0.4</priority>
</url>
<?php } /* 标签循环结束 */ ?>
</urlset>2.编辑 Nginx 伪静态规则,新增如下规则:
rewrite ^/sitemap.xml$ /sitemap.php last;
3.编辑网站根目录的.htaccess(如果没有则新建为txt文档),加入如下规则:
RewriteRule ^(sitemap)\.xml$ $1.php
直接访问网站域名+sitemap.xml即可。
Das obige ist der detaillierte Inhalt vonSo fügen Sie eine Sitemap in WordPress hinzu. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!
WordPress SEO
So installieren Sie WordPress nach dem Herunterladen
Die Rolle von index.html
Was tun, wenn Chrome keine Plugins laden kann?
Was ist die Mikrocontroller-Programmiersoftware?
Der Unterschied zwischen verteilten und Microservices
Gängige Linux-Download- und Installationstools
Implementierungsmethode der js-Sperrfunktion