【问题标题】:How to export umbraco content如何导出 umbraco 内容
【发布时间】:2015-03-10 10:42:15
【问题描述】:

我是新手,我使用 Umbraco 和 asp.net 我的问题是我需要导出大量内容中的文件(Umbraco)。我尝试使用 EyeCatch XML Export,但不起作用。我尝试创建一个新包,以便可以导入其他 Umbraco,但这不是我需要的。我需要 XML 文件和 XSL 文件中的内容文件。 例如,我需要主页下的所有文件,带有自己的图像等。 有谁知道有没有免费的包,或者有人知道怎么做吗?

【问题讨论】:

    标签: xml xslt umbraco


    【解决方案1】:

    在 /app_data/umbraco.config 中已经有一个包含您网站所有内容的 XML 文件(它的 .config 扩展名让您失去了嗅觉)。

    在渲染所有内容时,Umbraco 在内部使用这个 XML 文件。

    【讨论】:

    • 是的,但是所有的文件都有。我只需要主页下的那些,大约有 30 页,我需要所有这些都在一个导出 xml 中。
    【解决方案2】:

    我会看看 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 的后端。除非您确定控制器公开的数据是无害的,否则绝不应在实时站点上执行此操作。

    查看here 了解更多信息。欢迎乘坐 Umbraco 火车!这很有趣,而且我们正在不断壮大我们可以实现的目标。

    【讨论】:

    • 另外 - 如果您不关心所需的 XML 格式,请查看 App_Data 文件夹中的 Umbraco.config 文件。它包含 Umbraco 内容树中所有内容的视图。我之前已经编写过代码,可以将其解析到另一个系统中。当有人更新内容树中的节点时,文件将被更新。
    • 非常感谢你 :D 我找到了我需要的东西,但我没有使用 POCO :) 谢谢
    • 很高兴能帮上忙。我希望你和我们其他人一样喜欢 Umbraco!
    猜你喜欢
    • 2017-03-13
    • 1970-01-01
    • 1970-01-01
    • 2012-05-29
    • 2023-04-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多