如何在dasBlog中创建自定义页面?

时间:2008-09-08 15:12:46

标签: dasblog

我知道我过去曾见过这个,但我现在似乎无法找到它。

基本上我想创建一个我可以托管在dasBlog实例上的页面,该实例包含我主题的布局,但是我控制的页面内容。

理想情况下,内容是我编写的用户控件或ASPX。谁知道我怎么能做到这一点?

2 个答案:

答案 0 :(得分:4)

这样做的简单方法是“劫持”FormatPage功能。

首先将以下内容添加到newtelligence.DasBlog.UrlMapper部分的web.config中:

<add matchExpression="(?&lt;basedir&gt;.*?)/Static\.aspx\?=(?&lt;value&gt;.+)" mapTo="{basedir}/FormatPage.aspx?path=content/static/{value}.format.html" />

现在,您可以在内容目录中创建名为static的目录。从那里,您可以创建html文件,文件名将映射到这样的URL:

http://BASEURL/Static.aspx?=FILENAME

将映射到名为:

的文件

/content/static/FILENAME.format.html

您可以在该文件中放置通常放在itemTemplate.blogtemplate中的任何内容,但显然不会有任何发布数据。但是你可以使用它来放置其他宏,并且仍然使用hometemplate.blogtemplate来保持主题的其余部分围绕页面。

答案 1 :(得分:1)

我做了类似的事情,设置了一个处理程序,用于从家庭服务器上的博客中流式传输视频文件。我最终放弃了它,因为只要有人观看视频,它就会占用我的带宽,但我确实已经把它拿出来工作了一段时间。

为了让它工作,我不得不从源代码控制中检查dasBlog并在visual studio中打开它。我有VS2008并且它是使用VS2005构建的,因此需要一些工作来完成所有内容的构建。一旦我能够获得未经改变的构建解决方案,我就添加了一个新的类库项目来保存我的代码。这是为了确保我的代码在dasBlog更新中保持独立。

我无法在工作中访问此代码,因此我现在无法告诉您确切的名称,但如果您希望您的网页能够使用主题,那么他们需要从newtelligence.dasBlog.Web命名空间,我相信也实现了一个接口。要查看的好地方是FormatPage和FormatControl。