【问题标题】:Themosis framework wordpress - default pages give 404 statusThemosis 框架 wordpress - 默认页面提供 404 状态
【发布时间】:2019-10-25 14:09:03
【问题描述】:

我正在测试 Themosis WordPress 框架,但我似乎无法完全理解主题如何与该框架配合使用。

安装我自己的主题后,我可以看到位于 htdocs/content/themes/theme-name 中的文件。当我在footer.php 中进行一些调整时,我可以通过默认页面看到这些更改。但是,我请求的每个页面都会导致 404 页面。 (页眉和页脚从主题文件夹中加载)。

themosis 路线工作得很好,我可以在这里加载我自己的视图和逻辑。

为了使类似的默认内容页面正常工作(而不是转到 404),我是否必须编辑这些主题文件或通过路由文件完成所有操作?

  • 重现步骤:

    1. 根据文档安装。
    2. 登录到 Wordpress 管理员并创建帖子/页面
    3. 查看页面并看到 404。

【问题讨论】:

  • 请添加您所面临问题的更多详细信息。分享您到目前为止尝试过的相关代码sn-ps。
  • 我做了更多的研究。似乎每个默认的 wordpress 路由都必须在您自己的路由文件中重新定义
  • 关于这个话题有什么新鲜事吗?我有同样的问题。
  • 这里是他们写关于路由的地方:framework.themosis.com/docs/2.0/routing
  • 在文档中找不到任何相关信息

标签: php wordpress


【解决方案1】:

除非我弄错了,否则您似乎确实需要手动设置 WordPress 路由。这是 Pages/page 和 Posts/post 的示例:

// I added these to routes/web.php

// If is_page(), loads htdocs/content/themes/my-theme/views/pages/default.blade.php.
Route::any('page', function ($post, $query) {
    return view('pages.default', [
        'page' => $post, // not required
    ]);
});

// If is_singular(), loads htdocs/content/themes/my-theme/views/blog/single.blade.php.
Route::any('singular', function ($post, $query) {
    return view('blog.single', [
        'post' => $post, // not required
    ]);
});

请参阅 Themosis 上的 The WordPress $post and $query parametersWordPress routes Routing doc

【讨论】:

  • 谢谢,有同样的结论。
猜你喜欢
  • 2020-03-18
  • 2015-06-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-11-08
  • 1970-01-01
  • 2016-05-08
  • 2010-12-24
相关资源
最近更新 更多