表达式引擎:如何在文章链接中包含正确的类别 URL 标题?

发布于 2024-12-11 17:47:00 字数 579 浏览 0 评论 0原文

我正在一个 EE 1.7.1 站点上工作,需要在主页上显示两个最新的文章条目。挑战在于我还需要将这些条目链接回各自的类别页面才能正确显示。

这是我到目前为止的代码:

{exp:weblog:entries weblog="articles" limit="2"}
   <p><a href="{site_url}article/{url_title}">{title}</a></p>
{/exp:weblog:entries}

这是我想要做的,以便它引入相应的:

{exp:weblog:entries weblog="articles" limit="2"}
  {categories}
   <p><a href="{site_url}{category_url_title}/{url_title}">{title}</a></p>
  {/categories}
{/exp:weblog:entries}

不幸的是,这不能正常工作。这样做的正确方法是什么?

谢谢。

I am working on an EE 1.7.1 site and need to display the two most recent article entries on the home page. The challenge is that I also need to link those entries back to their respective category pages to display properly.

Here is the code I have so far:

{exp:weblog:entries weblog="articles" limit="2"}
   <p><a href="{site_url}article/{url_title}">{title}</a></p>
{/exp:weblog:entries}

Here is what I would like to do so that it brings in the corresponding :

{exp:weblog:entries weblog="articles" limit="2"}
  {categories}
   <p><a href="{site_url}{category_url_title}/{url_title}">{title}</a></p>
  {/categories}
{/exp:weblog:entries}

Unfortunately this doesn't work correctly. What is the right way to do this?

Thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

无戏配角 2024-12-18 17:47:00

ExpressionEngine 本身没有在输出永久链接 URI 时将类别名称作为 URL 段包含在内的方法,这与 WordPress 不同。

当然可以做到,但需要围绕标准 EE URL 进行黑客攻击段

如果您有一点点好奇,EE 上对此进行了更详细的讨论播客,Playgrounder 的 Episide #10 幕后花絮

Dan Benjamin 和 Ryan Ireland 之间的相关讨论发生在 18:45 - 26:20 之间,Dan 详细介绍了他如何为 开发独特的永久链接结构游乐场

剧透警告: Playgrounder URL 是使用最后一个分段变量构建的
查找条目 URL 标题,而前面 URL 的其余部分是以下命令的输出
循环浏览条目的类别。

例如,给定以下 URL:

http://playgrounder.com/stuff/learning/books/sneaky-uses-for-everyday-things

翻译成 EE 术语为:

/index.php/category_url_title/.../url_title

ExpressionEngine doesn't natively have a method of including the Category Name as a URL Segment when outputting the Permalink URI, unlike, say, WordPress.

It can be done of course, but will require hacking around the standard EE URL Segments.

If you're even the least bit curious, this was discussed in more detail on the EE Podcast, Episide #10 Behind the Scenes at Playgrounder.

The relevant discussion between Dan Benjamin and Ryan Ireland occurs between 18:45 - 26:20, when Dan details how he developed the unique permalink structure for Playgrounder:

Spoiler Alert: Playgrounder URLs are built using a last segment variable to
lookup the Entry URL Title, while the rest of the preceding URL is the output by
looping thru the entry's categories.

For example, given the following URL:

http://playgrounder.com/stuff/learning/books/sneaky-uses-for-everyday-things

Would translate into EE parlance as:

/index.php/category_url_title/.../url_title

俯瞰星空 2024-12-18 17:47:00

您可能需要在exp:weblog:entries 标记中添加dynamic="off" 参数。

You probably need to add dynamic="off" parameter in exp:weblog:entries tag.

心是晴朗的。 2024-12-18 17:47:00

您是否想显示最新的两个条目及其相关类别?例如:

参赛作品标题
发表于:礼物、宠物、玩具

其他一些条目标题
发布于:玩具、幼儿

如果这就是您想要做的,以下代码将输出上述内容:

{exp:weblog:entries weblog="news" limit="2"}
    <p>
        <a href="{url_title_path=products/view}">{title}</a><br />

        {categories limit="1"}
            {if category_id != ""}Posted In: {/if}
        {/categories}

        {categories backspace="2"}<a href="{path=products/index}">{category_name}</a>, {/categories}
    </p>
{/exp:weblog:entries}

Are you trying to show the latest two entries and their associated categories? Such as:

Entry Title
Posted In: Gifts, Pets, Toys

Some Other Entry Title
Posted In: Toys, Toddlers

If that's what you're trying to do, the following code will output the above:

{exp:weblog:entries weblog="news" limit="2"}
    <p>
        <a href="{url_title_path=products/view}">{title}</a><br />

        {categories limit="1"}
            {if category_id != ""}Posted In: {/if}
        {/categories}

        {categories backspace="2"}<a href="{path=products/index}">{category_name}</a>, {/categories}
    </p>
{/exp:weblog:entries}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文