本文遵守署名 4.0 国际 (CC BY 4.0)协议
纯代码获取WordPress所有文章,页面,分类,标签的静态化链接,这是因为技术宅最近更换了网站文章的固定链接,需要去做百度改版,因为是从/%postname%.html
更改为/%post_id%
,无法做规则适配,所以只能使用链接改版,于是就有了纯代码获取WordPress所有文章,页面,分类,标签的静态化链接!
获取所有文章链接代码↓
php require('./wp-blog-header.php'); header("Content-type: text/xml"); header('HTTP/1.1 200 OK'); $posts_to_show = 2000; //董岩松博客提示:这里的数字决定获取多少个文章链接,可根据自己站点服务器实际情况来具体填写,由于技术宅只有1000+文章,所以设置2000 echo '<?xml version="1.0" encoding="UTF-8"?>'; echo 'xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">' ?> php $myposts = get_posts( "numberposts=" . $posts_to_show ); foreach( $myposts as $post ) { ?> php the_permalink(); ?> php }?>
获取所有页面链接代码↓
php require('./wp-blog-header.php'); header("Content-type: text/xml"); header('HTTP/1.1 200 OK'); $posts_to_show = 100; //董岩松博客提示:页面一般不会很多,可根据自己的实际情况修改。 echo '<?xml version="1.0" encoding="UTF-8"?>'; echo 'xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">' ?> php $mypages = get_pages(); if(count($mypages) > 0) { foreach($mypages as $page) { ?> php echo get_page_link($page->ID); ?> php }?>
获取所有分类链接代码↓
php require('./wp-blog-header.php'); header("Content-type: text/xml"); header('HTTP/1.1 200 OK'); $posts_to_show = 500; //董岩松博客提示:自己根据需求修改 echo '<?xml version="1.0" encoding="UTF-8"?>'; echo 'xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">' ?> php /* 博客分类 */ $terms = get_terms('category', 'orderby=name&hide_empty=0' ); $count = count($terms); if($count > 0){ foreach ($terms as $term) { ?> php echo get_term_link($term, $term->slug); ?> php }?>
获取所有标签链接代码↓
php require('./wp-blog-header.php'); header("Content-type: text/xml"); header('HTTP/1.1 200 OK'); $posts_to_show = 2000; //董岩松博客提示:这里的数字决定获取多少个文章链接,可根据自己站点服务器实际情况来具体填写,由于技术宅只有1000+文章,所以设置2000 echo '<?xml version="1.0" encoding="UTF-8"?>'; echo 'xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:mobile="http://www.baidu.com/schemas/sitemap-mobile/1/">' ?> 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; ?> php echo $link ?> php }?>
然后,进入服务器,以 root 账号使用 wget 指令结合这个 PHP 代码文件即可生成指定的 TXT 文档。这里只以文章指令示例,页面、分类、标签请参考修改。
wget -O /***/***/jszbug.com/post.txt --no-check-certificate
以上就是纯代码获取WordPress所有文章,页面,分类,标签的静态化链接全部内容!
本文由转载小助手发布