[英]How to export umbraco content
我是新手,使用Umbraco和asp.net我的问题是我需要导出很多内容文件(Umbraco)。 我尝试了EyeCatch XML Export,但没有用。 我试图创建一个新程序包,以便可以导入其他Umbraco,但这不是我所需要的。 我需要XML文件和XSL文件中的内容文件。 例如,我需要主页下所有文件,带有自己的图像的文件,等等。有人知道是否有一些免费软件包吗?有人知道该怎么做吗?
/app_data/umbraco.config中已经有一个包含您网站所有内容的XML文件(.config的扩展名是使您远离气味的原因)。
在呈现所有内容时,Umbraco在内部使用此XML文件。
我会看一下UmbracoAPIController。 它们将使您轻松地将任何数据类型的属性值公开为XML或JSON。 它实质上是Microsoft Web API的扩展,非常易于创建。 您要做的就是创建一个POCO类来存储您的内容,其名称以“ Controller”结尾。 然后,您扩展UmbracoApiController。 例如:
using System.Web.Mvc;
using Umbraco.Core.Models;
using Umbraco.Web;
using Umbraco.Web.WebApi;
namespace MyNamespace
{
public class MyDocTypePoco
{
public string Name { get; set; }
public string ImageUrl { get; set; }
}
public class MyDocTypeController : UmbracoApiController
{
[UmbracoAuthorize, AcceptVerbs("GET, POST"), System.Web.Http.HttpGet]
public MyDocTypePoco GetPage(int id)
{
IPublishedContent node = Umbraco.TypedContent(id); // get our CMS node
var myPoco = new MyDocTypePoco // instantiate POCO and populate
{
Name = node.GetPropertyValue<string>(node.Name), // property of IPublishedContent
ImageUrl = node.GetPropertyValue<string>("imageUrl") // my document type's custom property's alias
};
}
}
}
当然,这将假定您的图像文件存储在别名为“ imageUrl”的属性中。
编译代码后,您应该可以使用此URL调用服务。
http://localhost/umbraco/api/MyDocType/GetPage?id=1234
1234是内容节点的ID,将localhost替换为您要在其下运行站点的域(并添加端口等)。 请注意,您可以删除“ UmbracoAuthorize”语句,以无需查看身份验证和登录到Umbraco的后端即可查看服务。 除非您确定控制器暴露的数据是无害的,否则切勿在活动站点上执行此操作。
在这里看看更多的阅读。 欢迎乘坐Umbraco火车! 这非常有趣,我们在实现目标方面正不断前进。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.