使用存储时,我的表达式引擎网站的URL是什么

时间:2012-10-25 10:25:53

标签: expressionengine expressionengine-stash

我试图了解stash插件的使用将如何影响我网站的URls。 传统方式: 我有一个名为site的模板组。在TG网站中,我有模板文章,about_us等。 URl将用于单个条目

www.mysite.com/index.php/site/articles/title_of_respective_article

关于我们页面的网址:

www.mysite.com/index.php/site/about_us

两者都将反映template_group /模板结构,因此对搜索引擎优化友好,并为用户提供他们在网站上的提示。

但是当我使用stash时,我将有2个包装器(一个用于主页,一个用于站点的其余部分。 部分将用于标题,主要内容和页脚。 据我了解,我将使用template_groups布局作为主要内容的包装和部分。

模板看起来像

两个包装器构建TG“布局”两者都是隐藏的,因为它们不应该被直接调用。

layout
   .homepage
   .site

TG部分中的三个部分

partials
    header
    main_content    
    footer

顺便说一句,不应该隐藏那些,因为它们也不是完整的HTML页面。

这让我很困惑。如何获取我的好网址? 像

这样的网址
www.mysite.com/index.php/site/about_us

将不再符合TG / T概念。

任何帮助?

3 个答案:

答案 0 :(得分:5)

要扩展上述答案,只是针对您的www.mysite.com/index.php/site/about_us请求:

您要创建一个名为“site”的模板组,然后您可以在/ index模板中使用此类代码

{embed="layout/.site"}

            {exp:channel:entries limit="1" disable="categories|member_data|pagination"}

            {exp:stash:set name='title'}{title}{/exp:stash:set}
            {exp:stash:set name='maincontent'}
            <section>
                <h1>{title}</h1>
                <article>{content}</article>
            </section
            {/exp:stash:set}

            {/exp:channel:entries}

嵌入调用.site布局,内部只是拉取您的特定频道:条目数据。

正如您所看到的,它仍然使用传统的模板组/模板构建网址的方式,它只是以不同的方式提取数据。

答案 1 :(得分:4)

使用Stash和template partials approach(我个人不使用)时,您提到的文件都是embedded。您仍然使用与以前相同的模板组和模板文件。

基于Stash的方法只是在现有模板中执行的不同方式 - 而不是替代它们。

答案 2 :(得分:0)

正如德里克所说的那样。考虑它的方法是这样 - 使用模板部分方法,您的模板主要包含(如果不仅仅)条目逻辑(通道条目循环,其参数,该通道正在使用的自定义字段等)。逻辑的结果将存储作为存储变量。然后,嵌入式布局模板会调用存储变量来显示您已隐藏的内容。因此,您的URL结构保持不变,但您的重复工作量要少得多,因为您将模板限制在逻辑上的程度越多(即格式/显示标记非常少),它们就越清洁,管理模板就越容易