更改ExpressionEngine论坛的URL

时间:2011-11-25 14:03:22

标签: php expressionengine

我已经在ExpressionEngine上设置了一个论坛,并根据我想要的论坛特定路径自定义了URL。

要做到这一点,我去了模块>讨论论坛>论坛主板首选项和论坛网址放入我想要的网址。我们称之为http://www.mywebsite.com/students/forum/

我的主页显示论坛的最新5条信息。除了没有转到此网址的网址,而是指向http://www.mywebsite.com/forums/viewthread/xxx

之外,这一切都有效

我在这里缺少一个额外的步骤吗?为什么论坛网址在保存时不会自动更新?

1 个答案:

答案 0 :(得分:0)

默认的ExpressionEngine安装假定论坛将始终位于URL:

http://example.com/index.php/forums

虽然您可以自由更改论坛的网址,但Discussion Forum Module逻辑要求论坛成为URI的第一个URL Segment Variable{segment_1}

这些信息并没有得到应有的广泛记录,并且为希望run their forum at a different URL or on a subdomain的人提供了很多混淆。

要使论坛能够作为不同的网址运行 - 在第二个细分{segment_2}上 - 您需要将EE配置为run the forum through regular templates *。

在您的示例中,您需要:

  1. 创建新模板组:students
  2. 在该模板组中,创建一个新模板:forum
  3. forum模板中,输入以下代码:{exp:forum}
  4. 从“控制面板”中,转到“附加组件”>模块>讨论论坛>默认首选项
  5. 将论坛主板首选项配置为以下内容:
  6.   

    论坛委员会标签:学生论坛
      论坛论坛主席简称: forum
      论坛网址: http://example.com/index.php/students/forum
      论坛触发词: <empty>

    ExpressionEngine Forum Module Board Preferences

    此时,您的论坛将在常规EE模板引擎内运行。 然后通过您在上面创建的模板访问论坛 - 使用模板名称代替前面提到的“触发器”字词:

    http://example.com/index.php/students/forum


    这种方法的缺点是它增加了更多的处理开销,因此除非用户确实需要此功能,否则不建议这样做。由于论坛无法缓存,因此在非常繁忙的站点上,这可能会造成一些不必要的服务器负载。

    不要缓存您为论坛创建的模板。如果您这样做,您的论坛将无法动态运行。