wordpress自动生成“站点地图”PHP代码

WordPress自动生成站点地图PHP代码

站点地图是网站结构的视觉表示,可以展示网站上的所有页面,文章和类别等,是SEO中很重要的一部分。为了让浏览器和搜索引擎更好地理解我们的站点,我们可以使用WordPress自动生成站点地图的PHP代码,生成一个自动更新的站点地图。

1、安装插件

为了生成自动更新的站点地图,我们需要安装Google XML Sitemaps或Yoast SEO等插件。这些插件最初是为SEO设计的,但可以生成一个xml格式的站点地图。

2、代码生成

一旦插件安装完成并激活,就可以使用以下代码在WordPress上生成站点地图:

<?php
/**
*Template Name: Site Map
*/
?>
<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9">
<?php
$args = array(
'public' => true,
'_builtin' => false
);
$output = 'names';
$operator = 'and';
$post_types = get_post_types( $args, $output, $operator );
foreach ( $post_types as $post_type ) {
$args = array(
'post_type' => $post_type,
'post_status' => 'publish',
'nopaging' => true
);
$query = new WP_Query( $args );
while ( $query->have_posts() ) {
$query->the_post();
$postdate = explode( " ", $post->post_modified );
echo '<url>n' .
'<loc>' . get_permalink( $post->ID ) . '</loc>n';
echo '<lastmod>' . $postdate[0] . 'T' . $postdate[1] . '+00:00</lastmod>n';
echo '<changefreq>' . 'weekly' . '</changefreq>n';
echo '<priority>' . '0.7' . '</priority>n';
echo '</url>n';
}
wp_reset_postdata();
}
?>
</urlset>

3、把代码复制到WordPress后台

这段代码可以直接复制到WordPress后台的functions.php文件中,或者将其保存为sitemap.php, 并将其上传到主题文件夹中。然后您可以在主题文件夹中的functions.php中添加以下代码:

add_action( 'publish_post', 'eg_create_sitemap' );
function eg_create_sitemap() {
ob_start();
include( get_stylesheet_directory() . '/sitemap.php' );
$sitemap = ob_get_contents();
ob_end_clean();
$fp = fopen( ABSPATH . "sitemap.xml", 'w' );
fwrite( $fp, $sitemap );
fclose( $fp );
}

4、生成站点地图

当新文章发布时,该站点地图将自动更新。现在您可以通过浏览器使用以下链接来查看您的站点地图:

http://example.com/sitemap.xml

现在您已经成功生成自动更新的站点地图了。请记住,网站的地图应该是搜索引擎优化中的重要组成部分,尤其是对于大型的网站。

晓白博客网版权所有,原文地址https://www.xbnb.cn/5272
© 版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容