问题标签 [roots-sage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1018 浏览

wordpress - 从 Sober 控制器输出自定义刀片部分

因此,对于我的模板,我正在创建一个运行自定义“模块”的代码块。基本上,它们是自定义帖子类型,在 ACF 中构建了字段。这些模块中的每一个都有自己的 Blade 模板(例如 /resources/views/modules/brandwindow.blade.php)。

我还为名为“模块化页面”的自定义帖子类型创建了 Blade 模板。在这个模板上,我处理循环中调用的每个模块的所有调用。但是,我希望能够在控制器中处理此登录。因此,我创建了一个名为“LoadModules”的控制器来处理该请求。

不过,我在从控制器调用 Blade 模板时遇到了一些困难。在函数 GetModules() 中,我循环遍历 ACF 中继器以查看我需要加载哪个模块,然后将所有相关字段提供给特定于该模块的另一个控制器(例如,如果模块 = 'bwindow',则调用 BrandWindow->BrandWindowFields )。这将返回一个数组,然后我可以将其传递给视图。

我已经将 View 类添加到了 Controller 的顶部(就像你在 Laravel 中所做的那样),但我很确定我在这里做错了什么。我收到以下错误:第 25 行的 ..\app\Controllers\LoadModules.php 中找不到类“视图”

这是我的控制器代码:

第 25 行,抛出的错误是:

$brand_window_loader->BrandWindowFields($window)只是一个使用帖子 ID 从 ACF 中提取的键值数组。

该错误显然与“视图”类不存在有关,所以我想知道我是否已命名空间或 Sage 9/Bedrock 不存在视图类。如果这是真的,那么从控制器中包含 Blade 模板的最佳方式是什么?

谢谢

0 投票
0 回答
232 浏览

wordpress - 将 Sage WordPress 主题转换为常规主题

我克隆了一个未完成且使用 Sage 制作的 WordPress 主题,因此为了让我能够处理该主题,我需要安装并运行 Sage,但它在我的本地环境中给我带来了不同的错误,这让我花费了太多时间来解决这些问题。我需要开始在实际主题中工作。如果我不想使用 Sage,有没有办法将使用 Sage 制作的主题转换为可以安装到 WP 的常规 wp 主题,就像任何其他常规主题一样,并且无需使用 Sage 就可以使用它?

0 投票
1 回答
284 浏览

node.js - sage 8.5.1 中的 gulp watch 问题

我目前正在使用 Sage 8.5.1 的网站上工作。

我已经完成了以下所有操作:

  1. 全局安装 gulp 和 Bowernpm install -g gulp bower
  2. 导航到主题目录并运行npm install
  3. bower install

但是当我运行 gulp watch 时,我遇到了以下问题:

有什么建议么?

0 投票
1 回答
281 浏览

wordpress - 在 vault.yml 中更改密码后,格状结构中的部署失败

我有一个使用 Trellis 的 wordpress 站点设置。最初,我设置了服务器并在没有加密 vault.yml 的情况下进行了部署。一切正常后,我更改了 vault.yml 中的密码并加密了文件。但是我的部署现在失败了。我收到以下错误-

我错过了什么步骤吗?我遵循了这些步骤-

  1. ansible-playbook server.yml -e env=staging
  2. ./bin/deploy.sh 暂存 mysite.org
  3. 在 staging/vault.yml 中更改密码
  4. 设置保险库密码
  5. 告知 ansible 密码
  6. 加密文件
  7. 提交文件并推送 repo
  8. 重新部署,然后我得到错误!
0 投票
1 回答
38 浏览

wordpress - 奇怪的固定链接问题

我一直在处理我的 WordPress 网站上的一个非常奇怪的永久链接问题,该网站运行 Sage 8.5.1,之前由另一位开发人员设置。

昨天,我在设置 > 阅读中在我的网站上创建了一个新主页,在这样做之后,我网站中的永久链接似乎完全停止工作。我正在使用设置:/%postname%/,当切换到通用:?p=123 时,我的所有链接都再次工作。

我做了很多测试,检查 .htaccess 文件,停用插件,返回代码版本和其他事情。

今天早上,我测试的最后一件事是激活通用 WordPress 主题,然后测试我的永久链接 (/%postname%/),它们工作正常。然后我通过基于 Sage 8.5.1 构建的原始主题重新激活,并且我的所有链接再次使用原始永久链接设置。

有没有人遇到过这个?它很奇怪,我不明白为什么停用主题,然后激活它会解决问题。

0 投票
1 回答
240 浏览

vue.js - 将 Vue mixins 导入 Webpack / vue-loader 环境时遇到问题

我有一个小问题。到目前为止,一切都编译得很好,直到试图让 mixins 正常工作。当创建一个并在单个文件组件中使用它时——没问题。效果很好。但是当从外部文件导入 mixin 时,它会破坏组件。外部JS甚至在同一目录中。

在Roots/Sage (webpack + vue-loader)上运行 Vue 和 vuex 。

所以外部文件(slideBase.js)看起来像这样:

我也试过:

在单个文件组件中:

还有其他人遇到 mixin 问题,或者知道可能发生了什么吗?

干杯,


编辑:控制台返回一个错误,指出我的一个变量未定义(放置在 vue import/ exports 上方 - 就在开始<script>标记上方。当然,从组件文件中调用 mixin 时,这些变量工作正常。

mixin 本身包含所有组件的计算属性——因此 Chrome 中的 Vue 控制台也(error during evaluation)为每个属性提供。

vuex 商店没有显示错误。

没有构建错误。

mixin 看起来像这样,为简洁起见省略了其他对象,但语法正确:


编辑2:我可能已经找到了问题,但我不知道如何解决它:

控制台中显示的未定义变量是 prevSlideNumber。这是在开始标记正下方的单个文件组件中定义的:

在创建 mixin(在外部文件中)以供重用之前,该变量会很好地加载。在单个文件组件本身中定义相同的 mixin 时,它也可以正常工作。

是否有加载事件的顺序可能会阻止 mixin 看到变量的值?如果首先加载 mixin,我可以看到原因。有什么办法吗?

这是外部文件 mixin(为简洁起见,具有计算属性之一):

非常感谢。= )

0 投票
0 回答
238 浏览

php - Sage Woocommerce - 试图获取非对象的属性 (get_current_screen()->id)

我不太确定这到底是什么时候发生的,因为它只发生在实时服务器上而不是本地。但是时不时地(每分钟几次)我会在我的debug.log.

PHP通知是:Trying to get property of non-object in /path/to/wordpress/wp-content/themes/themename/vendor/roots/sage-woocommerce/src/woocommerce.php on line 57

我什至设法查明了确切的问题,即get_current_screen()->id.

最奇怪的是,如果我在本地站点上采取与现场站点完全相同的操作,则在本地我会收到 0 个通知,但在现场站点上我每分钟会收到大约 4 个通知。(由于它是一个实时站点并且人们正在订购等)

也许也值得一提。实时站点托管在 cloudways 上,并拥有自己的服务器。

我曾尝试require_once(ABSPATH . 'wp-admin/includes/screen.php');在 sagewoocommerce.php文件中要求 ,var_dump(get_current_screen());但这只是返回NULL.

随着时间的推移,我尝试了很多方法来解决这个问题,但说实话,我上次尝试这个已经有一段时间了,我没有留下任何代码。

此文件中出现此问题的确切代码是:

这样做的好处是,它不会破坏订购物品的可能性,坏处是,我不喜欢这个通知,它严重填补了debug.log

我希望 ->id 部分返回“woocommerce_page_wc-status”,但如前所述,NULL无论我做什么,它都会返回。

任何帮助将不胜感激,因为任何地方都没有关于此的文章/帖子。

0 投票
1 回答
1081 浏览

wordpress - Browsersync 没有使用 Roots Sage 的服务器

我正在尝试使用 Wordpress 和 Roots Sage 开发一个 Wordpress 主题。在我的主题文件夹中,我安装了 sage

输入所有配置后,我尝试启动yarn start调用的开发构建webpack --hide-modules --watch --config resources/assets/build/webpack.config.js

Browsersync 然后给了我:

浏览器选项卡打开,但没有任何形式的响应。该页面一直在加载。

Webpack 配置 ( resources/assets/build/webpack.config.js) 是

有任何想法吗?谢谢!

0 投票
0 回答
388 浏览

css - 物化模块构建失败:无效的 CSS/预期的选择器

我正在使用 Sage 框架来构建一个 WordPress 网站,并且想使用一个自定义 CSS 框架,即 Materialize CSS。Sage 使用 Webpack 构建 CSS。

在构建时,我收到以下错误消息:

这是 Materialize Github 存储库:https ://github.com/Dogfalo/materialize

如果需要,这里是 Sage 框架的 github,webpack.config.js 在 build 文件夹中:https ://github.com/roots/sage/tree/master/resources/assets


笔记:

尝试导入.scss文件时出现错误:

如果我导入完整.css文件,我可以访问框架,但它是普通的 css:


这是 webpack 代码:https ://github.com/roots/sage/blob/master/resources/assets/build/webpack.config.js

0 投票
2 回答
29 浏览

wordpress - Woocommerce 仅削减 7 号

我目前正在使用最新的 wordpress 版本和最新的 woocommerce 版本。我已经设置了我的 wordpress 和 woocommerce,除了一件事之外,一切都运行良好。

数字“7”没有显示在产品概览页面的价格标签中(图片:https ://imgur.com/GPM4L7t ),也没有显示在标题中的产品单页上 ->(图片:https://imgur.com/GPM4L7t)但它确实显示在检查器中。

我没有任何覆盖或替换 7 的自定义 JS/PHP。除了 7 之外,所有其他数字都在工作。当我用谷歌搜索它时,我找不到任何关于它的信息。

有什么解决方法或解决方法吗?