OctoberCMS:为什么博客插件 "post.url" 中缺少 slug 值
OctoberCMS: Why is the slug value missing in "post.url" of the blog plugin
我正在使用博客插件的 [blogPosts]
组件。我有一个 for 循环来显示所有博客 posts。一切正常,但 {{ post.url }}
的值缺少 slug 值。这就是我使用组件的方式:
url = "/blog/:page?"
layout = "default"
[blogPosts]
pageNumber = "{{ :page }}"
postsPerPage = 10
noPostsMessage = "No posts found"
sortOrder = "published_at desc"
categoryPage = 404
postPage = "post"
==
{% set posts = blogPosts.posts %}
{% for post in posts %}
<h1>{{ post.title }}</h1>
<p>{{ post.summary|raw }}</p>
<a href="{{ post.url }}">Read more</a>
{% endfor %}
在上面的例子中,所有 post 个链接都指向 blog/post
。我希望每个 post 的 slug
都在其 url 中,但它丢失了。为什么?
有时可能是 blog page URL
的问题。
如果您使用 [blogPosts]
并且在标记中,您需要使用 {{ post.url }}
生成 blog page
的 link 您需要制作适当的 url
blog page
title = "Blog Post Page"
url = "/blog/post/:slug"
layout = "default"
is_hidden = 0
==
<?PHP
// ... other code
这里重要的是url = "/blog/post/:slug"
,主要的重要的是:slug
参数
URL has to have :slug
parameter to replace with actual post slug
.
如果您还需要在 URL 中添加 post 类别 slug,那么您还需要在 URL 中使用 :category
参数,例如:url = "/blog/post/:category/:slug"
these :slug
and :category
is hardcoded in making a link of the post so you need to use exactly them not other names
. check below screenshot of post model
from rainlab.post plugin.
如有疑问请评论。
我正在使用博客插件的 [blogPosts]
组件。我有一个 for 循环来显示所有博客 posts。一切正常,但 {{ post.url }}
的值缺少 slug 值。这就是我使用组件的方式:
url = "/blog/:page?"
layout = "default"
[blogPosts]
pageNumber = "{{ :page }}"
postsPerPage = 10
noPostsMessage = "No posts found"
sortOrder = "published_at desc"
categoryPage = 404
postPage = "post"
==
{% set posts = blogPosts.posts %}
{% for post in posts %}
<h1>{{ post.title }}</h1>
<p>{{ post.summary|raw }}</p>
<a href="{{ post.url }}">Read more</a>
{% endfor %}
在上面的例子中,所有 post 个链接都指向 blog/post
。我希望每个 post 的 slug
都在其 url 中,但它丢失了。为什么?
有时可能是 blog page URL
的问题。
如果您使用 [blogPosts]
并且在标记中,您需要使用 {{ post.url }}
生成 blog page
的 link 您需要制作适当的 url
blog page
title = "Blog Post Page"
url = "/blog/post/:slug"
layout = "default"
is_hidden = 0
==
<?PHP
// ... other code
这里重要的是url = "/blog/post/:slug"
,主要的重要的是:slug
参数
URL has to have
:slug
parameter to replace with actualpost slug
.
如果您还需要在 URL 中添加 post 类别 slug,那么您还需要在 URL 中使用 :category
参数,例如:url = "/blog/post/:category/:slug"
these
:slug
and:category
is hardcoded in making a link of the post so you need to use exactly them not othernames
. check below screenshot ofpost model
from rainlab.post plugin.
如有疑问请评论。