在Umbraco 7.0.3中我:
然后我有一个Surface Controller我打电话AJAX来显示页面(更具体地说是页面的Body属性):
public class JsController : SurfaceController
{
public ActionResult GetPage(int id)
{
var page = new Node(id);
if (page == null || page.GetProperty("body") == null)
return Content(@"Hmm, something went wrong. Unable to find what you're looking for.");
return Content(page.GetProperty("body").Value);
}
}
Run Code Online (Sandbox Code Playgroud)
这个设置几乎可以工作,但问题是,而不是渲染的表单,返回的是:
<!--?UMBRACO_MACRO macroAlias="ContactForm" /-->
Run Code Online (Sandbox Code Playgroud)
所以现在我需要渲染这个宏\ form\partial视图...我认为我可能需要在Controller中执行它,但是如果我可以在另一端(通过Javascript)这样做也可以.是否有一个Umbraco函数我可以在控制器中调用基于页面ID和宏别名渲染宏?
这就是我在做的事情

这是带红色的代码(它会抛出错误):
@foreach (var slide in Model.Children)
Run Code Online (Sandbox Code Playgroud)
我以为你曾经能够在Umbraco 4.7中做类似的事情.
如何在Umbraco 7中正确循环子节点?
所以我正在使用 umbraco 并使用标签数据类型。我试图获取添加到给定节点的所有标签并将它们放入字符串数组中,但是当我获取该值时,它似乎总是像这样出现:
"[\"标签1\",\"标签2\"]"
如何将数组的这个字符串转换回常规数组?到目前为止我所得到的只是一串单独的字符
我正在与Umbraco合作,并想知道是否有一种简单的方法来创建站点明智的设置节点.
目前我有这种树结构.
我想创建的是这样的
网站范围内容将包含类似Google Analytics Url的内容,用户可以轻松更改.
有没有办法实现这个目标?
好的,所以我刚刚在Umbraco的杂草中度过了最后的6-8周,并对我们的网站和环境进行了一些修复/改进.我花了很多时间试图纠正较低级别的Umbraco缓存相关问题.现在反思我的经验,我仍然不清楚以下几点之间的概念差异:
再次感谢,
德文 -
我只是对这两段代码有点好奇。它们都可以工作,但有什么区别?
Html.BeginUmbracoForm() vs Html.BeginForm()
Run Code Online (Sandbox Code Playgroud) 我有一个像这样的解决方案结构:
MyApp.Core
--Properties
--References
--bin
--Events
|EventHandlers.cs
--Directory
--Controllers
|DirectoryController.cs
--Helpers
|ContextHelpers.cs
--Models
|DirectoryModel.cs
--AnotherSite
--Controllers
--Helpers
--Models
--Services
--Shared
--Controllers
|HomePageController.cs
--Helpers
|Extensions.cs
|app.config
|packages.config
MyApp.Umbraco
--Properties
--References
--bin
etc........
--Views
--Directory
--Partials
|DirectoryFilters.cshtml
|DirectoryBase.cshtml
|DirectoryHome.cshtml
|FDirectory.cshtml
|SDirectory.cshtml
--Partials
--Shared
|Base.cshtml
|Web.config
etc........
Run Code Online (Sandbox Code Playgroud)
我的Umbraco实例使用我的"Core"项目中的模型和控制器.存在嵌套目录结构,因为一个安装中的多个网站,"Core"中以及Umbraco实例中的"Views"目录中.
我仍然相当熟悉.NET MVC,我理解路由劫持,但Umbraco路由的文档很小.我有以下内容:
EventHandlers.cs
namespace MyApp.Core.Events
{
/// <summary>
/// Registers site specific Umbraco application event handlers
/// </summary>
public class MyAppStartupHandler : IApplicationEventHandler
{
public void OnApplicationInitialized(UmbracoApplicationBase umbracoApplication, ApplicationContext applicationContext)
{
}
public void OnApplicationStarted(UmbracoApplicationBase …Run Code Online (Sandbox Code Playgroud) 我使用 Umbraco 7.4.3。
我创建了几个字典项目(带有几个子项目的腐烂项目),如下所示:HomePage Intro Body
当我尝试获取子项的字典值时,我得到了空字符串,但是对于根项,我得到了正确的结果。
例如,此调用有效 - 根据当前语言返回值:
@Umbraco.GetDictionaryValue("主页")
但此调用不起作用 - 返回空字符串:
@Umbraco.GetDictionaryValue("HomePage.Intro")
请帮忙!
我基本上有一个联系表单,我需要POST到我的Umbraco后端.前端看起来类似于:
using (Html.BeginUmbracoForm("HandleFormSubmit", "ContactForm", FormMethod.Post)) {
<form>
<input name="Name" type="text" />
<button type="submit">Send</button>
</form>
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个表面控制器/Controllers/ContactFormController.cs,看起来像:
public class ContactFormController : SurfaceController {
// GET: ContactForm
public ActionResult Index() {
return PartialView("ContactForm", new ContactForm());
}
[HttpPost]
public ActionResult HandleFormSubmit(ContactForm model) {
return RedirectToCurrentUmbracoPage();
}
}
Run Code Online (Sandbox Code Playgroud)
我想尝试HandleFormSubmitPOST方法.GET方法有效(断点证明了这一点).无论我做什么,我都无法接受这种方法.我看过很多指南,所有这些指南似乎与此完全相同.
POST数据如下:
url: /contact-us/
data: name="Test"
Content-Type: multipart/form-data
Run Code Online (Sandbox Code Playgroud)
我在这做错了什么?使用Umbraco 7.6.6
我正在使用 SkyBrud ( https://social.skybrud.dk/instagram/ ) 并且通常在 Umbraco/ASP .net 站点中使用此 API 设置 Instagram。该网站会将图像从 Instagram 显示到我的网站,该网站通过在 Instagram 上生成的 API 密钥连接并在我刚刚链接的服务中使用它们。
最近我决定创建一个新帐户(Insta)以获取一些 Instagram API 密钥。在第一步之后,我看到“注册已禁用”并且无法继续获取 API 密钥。
根据上面的网站,我得到了不再支持的愿景。然后我遇到了如何找到 Instagram 开发人员支持?有类似的问题,但有些人通过移动应用程序对其进行了排序,我认为这很奇怪,而其他答案与 Android 相关,因此认为它不适用于我。
然后我阅读了指向 Facebook https://developers.facebook.com/docs/instagram-basic-display-api/getting-started 的其他链接,但我不知道这一步是否是让现有功能正常工作的正确步骤起来又快?
方向太多了,所以我不确定该走哪条路来获取 API?