-2

与此线程相关,我想对已导入现有 asp.net 2.2 应用程序的新 peachpie / WordPress 项目做两件事:

  • 我想用我用来验证网站其余部分的身份引擎来保护它。我为 WordPress 管道设置了一个新分支,但我希望 WordPress 内容只能由已登录的用户查看
  • 我想将 WordPress 页面作为部分内容拉入剃须刀页面。此页面描述了如何通过直接引用 PHP 脚本来执行此操作,但我不确定我将使用什么来显示 WordPress 内容页面?

编辑:实际上,如果我能得到帮助解决#2的问题,我认为它可能会解决#1。

4

1 回答 1

1

要将 WordPress 页面拉入 Razor 页面的一部分,我使用了 jquery 的 .load 并定位了页面的 div 的#content id(拉入整个页面,重新设置了整个应用程序的样式) - 你会看到一个 #page默认情况下,所有 WordPress 页面中的 #content div。

$('#loadPage').load(pageAddress + " #content");

为了保护它并为其提供自己的路由而不是 root,我在 startup.cs 的 Configure 方法中使用了它。

    app.MapWhen(context => context.User.Identity.IsAuthenticated && context.Request.Path.Value.StartsWith("/content"), wp => 
    {
        wp.Map(new PathString("/content"), wpMapper =>
        {
            wpMapper.UseWordPress();
        });

    });

这使得 WordPress 安装可以从 /content 与 root 访问,并在我用于 ASP.NET Core 应用程序的同一凭​​据引擎后面保护所有 WordPress 内容。

现在,我在 ASP.NET Core 中运行了 WordPress,并将其合并到 razor 页面中,并保护其内容不受未经身份验证的用户的访问。相当繁琐的工作,但希望这可以帮助选择将 PeachPie 与 WordPress 和 ASP.NET Core 一起使用的其他人(如果有趣的话,我使用的是 2.2)。

于 2019-10-15T05:53:42.967 回答