我对WordPress主题开发很新,所以请耐心等待 . 我会尽力描述我的奇怪问题 . 对不起,我很抱歉!我现在无法提供实时链接,但我会尝试尽可能多地提供详细信息 .

这是我的情况:我制作了Woocommerce Storefront主题的儿童主题,我正在尝试自定义它,使它看起来像我在更改之前使用的主题(并且它有太多问题) . 我的问题是 Headers 栏 . 我的旧主题具有在 Headers 中显示购物车图标的功能,其中项目计数通过ajax自动更新 . 基于YITH Wishlist插件的wishlist图标和项目计数还有第二个功能 . 我必须调整一些东西,直到我让它们显示出来,但随后,当页面加载缓慢时,我看到我的函数首先被踢入,只是被店面主题中的函数替换 . 我无法摆脱那个,唯一有效的是在我自己的functions.php中覆盖它 . 现在我有两个功能做同样的事情 . 你不能再看到它了,因为结果看起来一样,但它们仍在运行 . 如果我删除自己的功能,它就不能正常工作,因为如果没有ajax,购物车数量不会更新 . 父函数似乎附加到用于样式化购物车的类之一 .

这是我在functions.php中更改的Storefront函数:

if ( ! function_exists( 'storefront_cart_link' ) ) {
  function storefront_cart_link() {
    ?>
        <a class="cart-contents text-right" href="<?php echo esc_url( WC()->cart->get_cart_url() ); ?>" title="View your shopping cart">
            <i class="fa fa-shopping-cart">
                <span class="count"><?php echo absint( WC()->cart->get_cart_contents_count() ); ?></span>
            </i>
        </a>
    <?php
  }
}

这是我从旧主题中使用的函数(我实际上将两个合二为一):

if ( !function_exists( 'mystore_cart_link' ) ) {
    function mystore_cart_link() {
        ?>  
        <a class="cart-contents text-right" href="<?php echo esc_url( WC()->cart->get_cart_url() ); ?>" title="View your shopping cart">
            <i class="fa fa-shopping-cart">
                <span class="count"><?php echo absint( WC()->cart->get_cart_contents_count() ); ?></span>
            </i>
        </a>
        <div class="top-wishlist text-right <?php if ( get_theme_mod( 'cart-top-icon', 1 ) == 0 ) { echo 'single-wishlist'; } ?>">
                <a href="<?php echo esc_url( YITH_WCWL()->get_wishlist_url() ); ?>" title="<?php esc_attr_e( 'Wishlist'); ?>" data-toggle="tooltip" data-placement="top">
                    <div class="fa fa-heart"><div class="count"><span><?php echo absint( yith_wcwl_count_products() ); ?></span></div></div>
                </a>
            </div>
        <?php
    }
}

然后还有ajax更新的功能,但我不认为它们是相关的 . 主题mods实际上不再存在,因为它们来自旧主题 . 正如我所说,它有效,但是一个功能取代了另一个功能的结果,还有另一个问题:当我将鼠标悬停在购物车图标上时,我想要看到的是显示购物车内容的下拉菜单 Banner . 但是,当我将鼠标悬停在它上面时,它只会显示一个小空框,只有当我将光标向下移动以将鼠标悬停在该框上时,才会在框下方显示下拉菜单 Banner . 我设法通过删除style.css中的填充来删除该框,但是我只需要将一条细线悬停在上面以获取购物车内容 . 我可以通过删除边框删除该行,但是没有任何东西可以悬停在上面并且购物车内容根本不显示 . 如何删除第二个悬停步骤?

这是两个屏幕截图,第一个悬停,只有框显示,第二个悬停在框上:

1st hover

2nd hover

我认为可能与悬停问题有关的另一个问题是当我有一长串购物车内容时会出现第二个滚动条,它会切断部分 Banner (如上面的屏幕截图所示) . 该列表显示在浏览器窗口中,而不是显示在购物车内容 Banner 中 . 我还没弄明白如何让它消失 . 我看到Storefront有一个javascript文件,似乎是用于添加滚动条,但我尝试取消注册并将其出列,甚至在父主题中重命名,并且它在调试器中不会再显示为运行,但是滚动条仍然出现 . 我怎么能让它消失?

当我将鼠标悬停在心愿单图标上时,我也会看到该框,然后是购物车内容 . 我怎么能阻止它?

我现在非常无能为力!如果您需要任何其他信息,请告诉我 . 我非常感谢你的帮助!