Ghost 是否存在与 Wordpress 的“帖子类型”和高级自定义字段插件等价的插件?
作为一个例子,我建立了一个旅游网站,它有多个旅行(一种自定义帖子类型),每次旅行都有各种序列化的行程目的地、导游等。另一个例子是设计师作品集,他们可能有一个项目帖子类型,其中包含序列化图像,每个图像都有自己的描述,可能还有日期戳或客户或其他任何内容。
我想通过GitHub在共享服务器上安装Ghost博客.在安装过程中,我需要运行npm install, grunt init并且grunt prod.我的主机提供500 MB的内存使用量,如果一个进程使用超过600 MB,他就会杀掉它.
因此,我需要一个选项来限制这些进程的内存使用量,因为它们都需要超过500 MB的内存!
我试图运行这些进程,--max-old-space-size=450但它似乎不起作用.
如果有人能为我提供有关使用选项运行节点进程的教程或文档的链接,我会很高兴.
谢谢!
更新: 因为我发布了这个,Ghost的安装已经完全改变了.
我目前正在开发一个Ghost博客(Ghost是一个Wordpress"继承者",它基于Node.js和该平台上的其他各种软件包/库),但我想知道我怎么能抓住所有的帖子在Ghost/Handlebars.js中有一个标记.
问题是Ghost的上下文通常被封装到我无法从API中提取带有某个标签的所有帖子的列表; 它显然只能迭代帖子index.hbs,其他解决方案有点黑客或更多地使用jQuery.
我怎样才能获得Ghost中所有帖子的列表或数组,以便我可以按标签过滤它们然后迭代它们?我甚至尝试过{{#foreach posts}},{{#has tag='WHATEVER'}}但这种方法似乎没有开箱即用.作为Ghost和Handlebars的新手,我不确定该怎么做.
我已经通过azure marketplace建立了一个鬼博客,这应该是从https://github.com/felixrieseberg/Ghost-Azure点击部署到azure的等价物
假设我在:theblog .azurewebsites.net /
我想它是在https://www.mycustomdomain.com/blog和我在其他应用服务的主要场所,让我们在说mainsite .azurewebsites.net /这个网站有mycustomdomain.com DNS都设置了一个证书.
在这个站点中,我在web.config中有Rewrite
<rule name="Reverse Proxy to blog" stopProcessing="true">
<match url="^blog(.*)" />
<action type="Rewrite" url="https://theblog.azurewebsites.net/blog/{R:1}" />
</rule>
Run Code Online (Sandbox Code Playgroud)
目前我正试图在登台网站上做到这一点,所以我在https:// mainsite -staging查看博客.azurewebsites.net/blog /
上面的重写成功地向我展示了在theblog.azurewebsites.net上托管的博客,而没有更改浏览器中的URL.在博客我也有websiteUrl应用程序设置为https://www.mycustomdomain.com.au/blog所以我的规范网址在博客文章中是正确的.
剩下的问题
我在互联网上搜索了很多年...
我回答:原来还有一个websiteUrlSSL应用程序设置,自述文件中没有提到.
我只需要设置它.
我最近在我的AWS ec2 Ubuntu 16.04服务器上安装了 Ghost 1.8.4 和 Nginx 。当我加载我的博客站点时,它正确地将我带到了 Ghost 主页,从那里我登录到了 Ghost 管理员。在管理屏幕上,有一条消息要更新。
我跑ghost update在腻子里
更新似乎成功了,但是当我返回我的博客站点时,收到以下错误:
502 错误网关 nginx/1.10.3 (Ubuntu)
我去了我的ghost目录/var/www/ghost并尝试运行:
sudo service ghost start
但它返回:
Failed to start ghost.service: Unit ghost.service not found
并试图停止,返回Unit ghost.service not loaded。我是否从正确的位置运行命令?
我按照本指南使用Ghost作为npm模块.
我想添加一些我可以在我的主题中使用的自定义助手.有没有办法在不更改Ghost模块内的代码的情况下执行此操作?
这是我目前的代码:
const ghost = require('ghost');
const path = require('path');
const hbs = require('express-hbs');
const config = path.join(__dirname, 'config.js');
const coreHelpers = {};
coreHelpers.sd_nls = require('./sd_nls');
// Register a handlebars helper for themes
function registerThemeHelper(name, fn) {
hbs.registerHelper(name, fn);
}
registerThemeHelper('sd_nls', coreHelpers.sd_nls);
ghost({ config: config })
.then(ghostServer => ghostServer.start());
Run Code Online (Sandbox Code Playgroud)
我认为一个可能的问题是我hbs是一个新的把手实例,与Ghost使用的不同,因此当Ghost运行时它不包括我注册的任何助手.
我在Heroku上部署了一个生产阶段应用程序.我想分叉应用程序来创建一个临时环境.
Input
heroku fork --from <app_name>-production --to <app_name>-staging
Output
Forking <app_name>-production... done. Forked to <app_name>-staging
Setting buildpacks... done
Adding newrelic:wayne to <app_name>-staging as NEW_RELIC... done
Adding deployhooks:http to <app_name>-staging as DEPLOYHOOKS_HTTP... done
Adding heroku-postgresql:standard-yanari to <app_name>-staging as HEROKU_POSTGRESQL_MAROON...!
That add-on plan is only available to select users.
There was an error forking to <app_name>-staging.
Run Code Online (Sandbox Code Playgroud)
我不确定是否需要更新postgresql数据库,或者通过Heroku购买一些额外的附加组件.由于我是新手,这是我雇主的应用程序,我不愿做出任何可能导致数据丢失的更改.谢谢!
我正在尝试在 Linux Docker 容器中的 Azure 上运行一个ghost docker 映像。使用 Linux 上 Azure Web App 的自定义 Docker 映像并将其指向 ghost 的官方 docker hub 映像,这非常容易启动和运行。
不幸的是,官方 docker 映像将所有数据存储在 /var/lib/ghost 路径上,该路径不会在重新启动后持续存在,因此每当容器重新启动时,我的所有内容都会被删除,我最终会回到默认的 Ghost 安装。
Azure 不会让我执行任意命令,您基本上将其指向 docker 映像,它会从那里触发,因此我无法使用 -v 命令行参数来映射卷。如果有帮助的话,docker 镜像确实配置了一个入口点。
任何建议都会很棒。谢谢!
从下面的图表中可以看出,我遇到了一个有趣的问题。我有一个 2GB 的 VPS,运行三个 Ghost(在节点上运行的博客平台)容器。Node 的内存使用量会逐渐增加,直到大约 95% 时才会进行大量垃圾收集。这会导致磁盘 I/O 和 CPU 套件 100% 出现巨大峰值,然后......停留在那里。
任何想法可能会发生什么?我已经环顾了几天,但找不到任何有用的信息。我的网络服务器仍在响应,网站加载等。
我在 Windows 10 上安装了 ghost 和 ghost-CLI。运行时ghost start出现以下错误。如何解决这个问题?它似乎与检查文件和文件夹权限的命令有关。请注意,我在 D: 驱动器中运行 ghost。
顺便说一句,如果我运行ghost run它就可以了。
D:\onlinehelp>ghost start
Process manager 'systemd' will not run on this system, defaulting to 'local'
? Checking current folder permissions
? Validating config
× Checking folder permissions
× Checking file permissions
? Checking memory availability
One or more errors occurred.
1) Checking folder permissions
Message: Command failed: C:\WINDOWS\system32\cmd.exe /q /s /c "find ./ -type d ! -perm 775 ! -perm 755"
FIND: Parameter format …Run Code Online (Sandbox Code Playgroud) ghost ×10
node.js ×5
ghost-blog ×4
azure ×2
docker ×2
javascript ×2
gruntjs ×1
heroku ×1
linux ×1
nginx ×1
npm ×1
postgresql ×1
templates ×1