我已直接修改了woocommerce插件中class-wc-checkout.php
文件夹中的includes
文件,以添加自定义line item meta
数据。有没有办法{-1}} my-theme文件夹中的class-wc-checkout.php文件,因为我们覆盖了woocommerce中的模板文件?
答案 0 :(得分:6)
我遇到了同样的问题。我不需要在我的网站上进行评论,因此我将要删除的内容从includes
文件夹中的文件中复制并复制到我的functions.php
文件中,如下所示:< / p>
// Remove reviews from WooCommerce
if (! function_exists( 'woocommerce_default_product_tabs')) {
function woocommerce_default_product_tabs($tabs = array()) {
}
}
适合我!
答案 1 :(得分:3)
只有模板文件夹文件可以通过将其复制到您的子主题中来覆盖。
对于包含文件夹文件的所有其他文件,您可以编辑它或使用挂钩和过滤器来执行此操作。
答案 2 :(得分:2)
我不太清楚你在编辑Woocommerce插件是什么,但是你可以通过在你的主题中的functions.php文件中添加这些钩子和过滤器来覆盖woocommerce插件:
答案 3 :(得分:2)
对我来说似乎有用的是将文件放在这里:
/wp-content/themes/YOURTHEME/includes/class-wc-checkout.php
另一个建议和我之间的区别在于我没有路径中的'woocommerce'文件夹。
答案 4 :(得分:0)
是的,您应该可以通过上传到此文件夹来执行此操作
/wp-content/themes/YOURTHEME/woocommerce/includes/class-wc-checkout.php
答案 5 :(得分:0)
示例
您需要编辑文件:Announces.find(filter,{images:0})
将文件复制到 @Autowired
PlatformTransactionManager txm;
TransactionStatus txstatus;
@BeforeEach
public void setupDB() {
DefaultTransactionDefinition def = new DefaultTransactionDefinition();
def.setPropagationBehavior(TransactionDefinition.PROPAGATION_REQUIRES_NEW);
txstatus = txm.getTransaction(def);
assumeTrue(txstatus.isNewTransaction());
txstatus.setRollbackOnly();
}
@AfterEach
public void rollback() {
txm.rollback(txstatus);
}
添加到function.php:
/plugins/woocommerce/includes/shortcodes/class-wc-shortcode-products.php