【问题标题】:Change the text of 'View cart' button更改“查看购物车”按钮的文本
【发布时间】:2013-08-28 07:12:18
【问题描述】:

我正在使用 woocommerce 插件,但我遇到了关于如何更改查看购物车按钮文本的问题,希望有人可以帮助解决我的问题,这是 my site 这是我要更改的文本图像the image 我该如何编辑它?感谢所有建议。

【问题讨论】:

    标签: php wordpress woocommerce


    【解决方案1】:

    将以下内容添加到您的 functions.php 文件中。

    /**
     * Change text strings
     *
     * @link http://codex.wordpress.org/Plugin_API/Filter_Reference/gettext
     */
    function my_text_strings( $translated_text, $text, $domain ) {
        switch ( strtolower( $translated_text ) ) {
            case 'View Cart' :
                $translated_text = __( 'View Shopping Cart', 'woocommerce' );
                break;
        }
        return $translated_text;
    }
    add_filter( 'gettext', 'my_text_strings', 20, 3 );
    

    这会将查看购物车更改为查看购物车

    【讨论】:

    • 应该是case 'view cart' : 否则完美运行。
    • 此处显示的示例代码有效,但效率极低,因为它强制将所有 Wordpress 文本转换为小写,然后运行此过滤器以查看它是否匹配大小写。它对加载时间以及添加到购物车等功能有直接影响。如果您使用 ajax 将产品添加到购物车而不刷新页面,这一点尤其明显。我在这个线程中发布了替代代码,它只评估来自 WooCommerce 域的文本,因此可以让加载速度更快。
    【解决方案2】:

    Selom 提出的示例代码有效,但效率极低,因为它强制将所有 Wordpress 文本转换为小写,然后运行此过滤器以查看是否匹配大小写。它对加载时间以及添加到购物车等功能有直接影响。如果您使用 ajax 将产品添加到购物车而不刷新页面,这一点尤其明显。

    最好只通过过滤器运行来自 WooCommerce 域的文本。这大大加快了速度。

    我建议改用此示例代码,源自 Rodolfo Melogli:

    /**
     * @snippet       Translate a String in WooCommerce
     * @sourcecode    https://businessbloomer.com/?p=162
     * @author        Rodolfo Melogli
     * @compatible    WooCommerce 3.5.4
     * @donate $9     https://businessbloomer.com/bloomer-armada/
     */
    
    add_filter( 'gettext', 'bbloomer_translate_woocommerce_strings', 999, 3 );
    
    function bbloomer_translate_woocommerce_strings( $translated, $text, $domain ) {
    
    
         if ( ! is_admin() && 'woocommerce' === $domain ) {
    
          switch ( strtolower( $translated ) ) {
    
             case 'view cart' :
                $translated = 'View/Edit Order';
                break;
    
             case 'proceed to checkout' :
                $translated = 'Place Order ';
                break;
    
              case 'checkout' :
                $translated = 'Place Order ';
                break;
    
        case 'add to cart' :
                $translated = 'Add to Order';
                break;
    
    
             // enter a new case for each line where you want Woocommerce text to be changed.
    
          }
    
       }   
    
    
        return $translated;
    }
    
    

    【讨论】:

      【解决方案3】:

      将以下 sn-p 添加到您的 functions.php 文件中

      function woo_custom_change_cart_string($translated_text, $text, $domain) {
          $translated_text = str_replace("view cart", "NEW TEXT HERE ", $translated_text);
          $translated_text = str_replace("View cart", "NEW TEXT HERE ", $translated_text);
      return $translated_text;
      }
      add_filter('gettext', 'woo_custom_change_cart_string', 100, 3);
      add_filter('ngettext', 'woo_custom_change_cart_string', 100, 3);
      

      【讨论】:

        【解决方案4】:

        将以下代码添加到您的functions.php 文件中。

        function change_view_cart_link( $params, $handle )
        {
            switch ($handle) {
                case 'wc-add-to-cart':
                    $params['i18n_view_cart'] = "Proceed to Cart"; //chnage Name of view cart button
                    $params['cart_url'] = "http://myshop.com/custom-page"; //change URL of view cart button
                break;
            }
            return $params;
        }
        add_filter( 'woocommerce_get_script_data', 'change_view_cart_link', 10, 2 );
        

        【讨论】:

        • add_filter( 'woocommerce_get_script_data', 'change_view_cart_link',10,2 ); 这是钩子
        • add_filter( 'woocommerce_get_script_data', 'change_view_cart_link',10,2 ); 似乎对于以下工作至关重要。我想我会因此而编辑答案。谢谢@AkhtarujjamanShuvo!还有@Dnyanesh!这个答案对我来说似乎比其他答案更好,因为它不需要编辑 WooCommerce 代码并且看起来比其他答案更有效。
        【解决方案5】:

        转到wp-content\plugins\woocommerce\includes\wc-template-functions.php 然后编辑 raw 1429

        function woocommerce_widget_shopping_cart_button_view_cart() {
                echo '<a href="' . esc_url( wc_get_cart_url() ) . '" class="button wc-forward">' . esc_html__( 'View cart', 'woocommerce' ) . '</a>';
            }
        }
        function woocommerce_widget_shopping_cart_button_view_cart() {
                echo '<a href="' . esc_url( wc_get_cart_url() ) . '" class="button wc-forward">' . esc_html__( 'your text', 'woocommerce' ) . '</a>';
            }
        }
        

        版本woocommerce 3.0.3

        【讨论】:

          猜你喜欢
          • 2016-03-20
          • 2021-07-08
          • 1970-01-01
          • 2018-09-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2021-09-09
          相关资源
          最近更新 更多