• 曾经自己 像浮萍一样无依
  • 说尼玛发工资还没信呢
  • 快走了…不算今天出除去周日还有5天!\(^o^)/
  • 还有半个月就走了…挺好的.
  • 无聊啊,最近也没啥更新的.
  • 妈的,写之前不说,写完了了你说不行.中途我还问你你说对.你真是中国第一Monkey
  • 沃妮马,过的真快!转眼又上班了.等待十月一.
  • 还有1天就是端午节了.过的真快, 在这个公司工作半年啦..
  • 咦~哪个弟弟CC我呢?
  • 简单,简单.我提个思路.

WordPress无需插件自动生成XML网站地图

PHP KIENG 8个月前 (04-30) 83653次浏览 已收录 6个吐槽 扫描二维码

WordPress 无需插件自动生成 XML 网站地图
我原来用的柳城的网址地图也不知道咋了,后来不能用了…我这个主题自带 HTML 版的网址地图所以就不需要 HTML 版地图了!
后来看到月光和 MK 的 XML 生成代码我就操作了一手! :cool: (月光的只有文章的,没有分类,标签之类的…)
喏~上代码~:

<?php 
require('./wp-blog-header.php'); 
header("Content-type: text/xml"); 
header('HTTP/1.1 200 OK'); 
echo '<urlset xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" 
xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 https://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">'; 
?> 
<!-- generated-on=<?php echo get_lastpostdate('blog'); ?>--> 
<url>
	<loc><?php echo get_home_url(); ?></loc>
	<lastmod><?php echo gmdate('Y-m-d\TH:i:s+00:00', strtotime(get_lastpostmodified('GMT'))); ?></lastmod>
	<changefreq>daily</changefreq>
	<priority>1.0</priority>
</url>
<?php


// 文章
$posts = get_posts('numberposts=-1&orderby=post_date&order=DESC');
foreach($posts as $post) : 
?>
    <url>
        <loc><?php echo get_permalink($post->ID); ?></loc>
        <lastmod><?php echo str_replace(" ", "T", get_post($post->ID)->post_modified); ?>+00:00</lastmod>
        <changefreq>monthly</changefreq>
        <priority>0.6</priority>
    </url>
<?php 
endforeach;


// 页面
$pages = get_pages('numberposts=-1&orderby=post_date&order=DESC');
foreach($pages 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 
endforeach;


// 分类
$categorys = get_terms('category', 'orderby=name&hide_empty=0');
foreach ($categorys as $category) : 
?>
    <url>
        <loc><?php echo get_term_link($category, $category->slug); ?></loc>
        <changefreq>weekly</changefreq>
        <priority>0.8</priority>
    </url>
<?php 
endforeach;


// 标签
$tags = get_terms('post_tag', 'orderby=name&hide_empty=0');
foreach ($tags as $tag) : 
?>
    <url>
        <loc><?php echo get_term_link($tag, $tag->slug); ?></loc>
        <changefreq>monthly</changefreq>
        <priority>0.4</priority>
    </url>
<?php 
endforeach;
?>
</urlset>

保存为sitemap.php到根目录

然后在宝塔任务计划里:
WordPress 无需插件自动生成 XML 网站地图

#就是下载文件到目录里的意思
wget -O /www/wwwroot/网站所在目录/sitemap.xml https://你的网址/sitemap.php>/dev/null 2>&1

WordPress 无需插件自动生成 XML 网站地图
我的大功告成!WordPress 无需插件自动生成 XML 网站地图
代码转载自:月光宅博客,我在原有基础上稍作修改!


KIENG , 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA 4.0协议进行授权
转载请注明原文链接:WordPress 无需插件自动生成 XML 网站地图
本文章链接:https://blog.kieng.cn/984.html
喜欢 (2)
KIENG
关于作者:
一个热衷网络的Man
发表我的评论
取消评论
表情 加粗 删除线 居中 斜体 签到

Hi,您需要填写昵称和邮箱!

  • 快速获取昵称
  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址
(6)个小伙伴在吐槽
  1. 转载屌啊
    老哥2019-04-30 16:08 回复 Windows 10 | Chrome 69.0.3497.100
    • 基本的
      12019-05-03 14:00 回复 Linux | Chrome 74.0.3729.112
  2. 大佬,你博客有些文章是请输入密码查看加密内容,弱弱的问一句密码是多少
    支援2019-05-03 18:20 回复 Windows 10 | Chrome 72.0.3626.121
    • 您说的是哪个文章? :???:
      KIENG2019-05-05 12:25 回复 Windows 10 | 搜狗浏览器 2.X
  3. 有用
    Android2019-05-05 14:31 回复 Linux | Chrome 74.0.3729.136
  4. 楼下是疯子。哈哈
    1fg2019-05-07 16:54 回复 Windows 7 | 未知浏览器