鹿白运维 - 无畏者的分享平台
主页 » Typecho教程 » 正文

输出Typecho的所有链接

/ in Typecho教程

输出Typecho的所有链接,比如输出所有分类的链接之类的,刚好有这个小需求,于是立刻就想到了Sitemap插件代码可以参考,发现其实现方式代码有点多,于是乎自己就想试试简单的方法,于是有了下面的内容。

输出所有分类的链接

原理就是用官方方法循环输出所有分类信息,然后单独将链接增加到数组里,当然也可以加别的信息,下面的其他内容方法打同小异将不再重复讲解

echo "<pre>";
$cateurl=array();
Typecho_Widget::widget('Widget_Metas_Category_List')->to($categories);
while($categories->next()){array_push($cateurl,$categories->permalink);}
print_r($cateurl);
echo "</pre>";

输出所有标签的链接

echo "<pre>";
$cateurl=array();
Typecho_Widget::widget('Widget_Metas_Tag_Cloud')->to($categories);
while($categories->next()){array_push($cateurl,$categories->permalink);}
print_r($cateurl);
echo "</pre>";

输出所有独立页面的链接

这里设置成隐藏的页面不会被输出哈

echo "<pre>";
$cateurl=array();
Typecho_Widget::widget('Widget_Contents_Page_List')->to($categories);
while($categories->next()){array_push($cateurl,$categories->permalink);}
print_r($cateurl);
echo "</pre>";

输出所有文章的链接

这里设置成隐藏的文章不会被输出哈,下方的999是想要输出的文章数量,填的只要超过自己的文章数量就能全部输出了

echo "<pre>";
$cateurl=array();
Typecho_Widget::widget('Widget_Contents_Post_Recent','pageSize=999')->to($categories);
while($categories->next()){array_push($cateurl,$categories->permalink);}
print_r($cateurl);
echo "</pre>";

输出所有日期归档的链接

echo "<pre>";
$cateurl=array();
Typecho_Widget::widget('Widget_Contents_Post_Date')->to($categories);
while($categories->next()){array_push($cateurl,$categories->permalink);}
print_r($cateurl);
echo "</pre>";

实际用途

可以在插件中使用,比如做个Sitemap插件,或者做静态缓存插件,需要用到页面的地址也可以用这个方式。

猜你喜欢
评论 (0)
隐私评论
搜索