How to add carrier icons to AliShipping add-on

Mar

Moderator
Yes the URL of that product, or any other with that shipping method, so I can add it to the cart and see the checkout/cart page with that shipping method showing (I don't need the other icons to be there). I can then use browser developer tools to work out the right CSS to add to that icon in and send it to you to add, and it will apply for any product with the shipping method :)
Sent you in PM.
 

Mar

Moderator
That's weird, please can you message me a link to the product with that shipping method and a delivery country it applies to so I can take a look for you? If you would like me to of course, it's your site :)
Have sorted it out, at least with the single products. Thanks, it's great.

1597562329159.png
 

Janjesant

New Member
I installed AliShipping plugin on one of my sites today and decided to add the shipper/carrier icons to it like on AliExpress. I also changed a couple of other bits so I'm sharing here in case anyone wants to copy.

First of all, I wanted to completely remove the shipping calculation from the cart page. As well as the WooCommerce settings to disable it, I removed it completely with this function:

PHP:
function disable_shipping_calc_on_cart( $show_shipping ) {
    if( is_cart() ) {
        return false;
    }
    return $show_shipping;
}
add_filter( 'woocommerce_cart_ready_to_calc_shipping', 'disable_shipping_calc_on_cart', 99 );

So now it only shows shipping on the checkout page after a country is entered.

I noticed that when you have a single product in the cart it shows the shipping method name and delivery time in a single line (WooCommerce default) but where there is more than one product in the cart (per product shipping kicks in) then it shows the delivery time on a new line underneath the shipping method name.

The below functions:

1) removes the colon at the end of the shipping method line
2) splits the standard shipping options onto two lines at the first '(' symbol (and removes the open bracket)
3) wraps the delivery time in a span and gives it a CSS class of .timing so you can style/position it (and removes the close bracket)

You can leave the open/close brackets in but I removed them to match the per-product shipping from the AliShipping plugin.

They're three separate functions just because I added them at different times and I'm disorganised

PHP:
add_filter( 'woocommerce_cart_shipping_method_full_label', 'remove_shipping_label', 9999, 2 );

function remove_shipping_label( $label, $method ) {
    $new_label = preg_replace( '/:+/', '', $label );
    return $new_label;
}

add_filter( 'woocommerce_cart_shipping_method_full_label', 'add_shipping_label_line', 9999, 2 );

function add_shipping_label_line( $label, $method ) {
    $new_label = preg_replace( '/\(/', '<br/><span class="timing">', $label );
    return $new_label;
}

add_filter( 'woocommerce_cart_shipping_method_full_label', 'add_shipping_label_end', 9999, 2 );

function add_shipping_label_end( $label, $method ) {
    $new_label = preg_replace( '/\)/', '</span>', $label );
    return $new_label;
}

Also you can use this to change the 'Shipping' title to say whatever you want (for when there's one product on the order):

PHP:
add_filter( 'woocommerce_shipping_package_name', 'custom_shipping_package_name' );
function custom_shipping_package_name( $name ) {
  return 'Shipping Options:';
}

Then the fun part was adding the carrier images with CSS. Again, this needs to be done separately for when there's a single product in the order and for when there are multiple products on the order, as the shipping methods display in different ways for each one.

For the images I used data URIs like AliExpress does, and I made my own for 'registered post' but you can use any image you want by using a free 'image to data URI' converter - there are loads on Google and I just used the first one that came up. Using data rather than images is better for site speed and reduces the number of calls.

This is what the end result is regardless of whether it's per order shipping or per product shipping:

View attachment 12559

Here's the CSS, which will need adjusting based on your theme. It works the same on mobile, as my websites are all mobile responsive.

For the single product orders:

First the three EMS logo examples:

CSS:
label[for=shipping_method_0_ems_zx_zx_us], label[for=shipping_method_0_e_ems], label[for=shipping_method_0_ems]{
    padding-left:40px;
    line-height:20px;
}
label[for=shipping_method_0_ems_zx_zx_us]:before, label[for=shipping_method_0_e_ems]:before, label[for=shipping_method_0_ems]:before{
    content:"";
background-image:url(data:image/png;base64,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);
    background-size:40px 28px;
    background-repeat:no-repeat;
    width:40px;
    height:28px;
    position:absolute;
    margin-left:-40px;
    margin-top:6px;

}

I can't post enough characters so I'll just include the Data URIs for the other images later.

For multi-product orders

Adding them for per-product shipping was a bit more complicated:

CSS:
tr.shipping ul li{
    margin-top:15px;
}
span.timing{
      display: contents;
    font-size: 14px;
}
.shipping-each dl.variation dd .shipping-time{
    margin-left:0px;
}
.shipping-each dl.variation dd label{
    padding-left:60px !important;
}
.shipping-each dl.variation dd input[name^=shipping]{
    margin-left:-60px;
    margin-bottom:-20px;
    display:block
}
.shipping-each dl.variation dd label  input[name^=shipping]:after{
    width:40px;
    min-width:40px;
    display:inline-block;
    position:absolute;
    margin-top:-8px;
    margin-left:17px;
}

Then add the following for each of the carriers to add the images in, and tweak the positioning with the margins as necessary. You can also change the size of the images by changing the background size, width and height values and then adjusting the padding and margin values to compensate:

CSS:
.shipping-each dl.variation dd input[value^="EMS"]:after, .shipping-each dl.variation dd input[value="E_EMS"]:after{
    content:"";
background-image:url(add the EMS data URI here);
    background-size:40px 28px;
    background-repeat:no-repeat;
    width:40px;
    height:28px;
}

.shipping-each dl.variation dd input[value="DHL"]:after{
    content:"";
background-image:url(add the DHL data URI here);
    background-size:37px 30px;
    background-repeat:no-repeat;
    width:37px;
    height:30px;
    margin-left:19px !important
}

As per the DHL example above, use the !important tag if you need to change the margins and it will then override the ones you set earlier.

I'll add the Data URIs for each of the images in comments as they're too long to add here, just change which labels/inputs your targeting and update the background-image URL with the image URIs.

Also, this function will change the free shipping options from showing no price to showing 0.00 (for single product orders, I'm still working on for per-product shipping):

PHP:
add_filter( 'woocommerce_cart_shipping_method_full_label', 'add_0_to_shipping_label', 10, 2 );

function add_0_to_shipping_label( $label, $method ) {

// if shipping rate is 0, concatenate ": $0.00" to the label
if ( ! ( $method->cost > 0 ) ) {
$label .= ': ' . wc_price(0);
}
// return original or edited shipping label
return $label;
}

It'll take some fiddling for your theme but if you want to add the images like I did hopefully this will help, and might save you the time of figuring it out that it took me.
Looks very impressive. I wish I know where to put this!
 

the_lyall

Active Member
Looks very impressive. I wish I know where to put this!

Thanks, I've actually made some more tweaks since this post.

PHP goes in the functions.php of your child theme, either access by FTP (in wp-content/themes directory) or in Appearance > Theme Editor

CSS goes in wherever you can add custom CSS to your theme (Appearance > Customizer) as the exact name of the 'Additional CSS' area within Customizer differs from theme to theme. Sometimes it's under General, sometimes it has it's own menu etc.
 

Janjesant

New Member
Thanks, I've actually made some more tweaks since this post.

PHP goes in the functions.php of your child theme, either access by FTP (in wp-content/themes directory) or in Appearance > Theme Editor

CSS goes in wherever you can add custom CSS to your theme (Appearance > Customizer) as the exact name of the 'Additional CSS' area within Customizer differs from theme to theme. Sometimes it's under General, sometimes it has it's own menu etc.
Thanks for your response. I'm okay with the CSS, the PHP is what gets me in panic:rolleyes:
 

the_lyall

Active Member
Thanks for your response. I'm okay with the CSS, the PHP is what gets me in panic:rolleyes:

I used to be like that - if you're not used to it then it can be daunting. Just remember:
  • ALWAYS make a backup of any files you're changing which you can switch back to in case you run into an error and get lost trying to fix it.
  • If you're doing major changes or anything database related then do a whole site backup (not necessary for changes like this if you already have daily backups in place). If you don't have daily backups in place, install Updraft Plus (free) and start doing them
  • Never make changes to plugin files or theme files directly, as when the plugins or themes are updated your changes will be lost. Always work from a child theme and use your functions.php file to add in custom functions.
  • Make sure you can access to the site by FTP in case something goes wrong and you need to replace files manually. Modern versions of WordPress have all sorts of recovery features which can help, but FTP is easier. If you need an FTP client, I recommend FileZilla (free) as it's easy to use.
The functions.php file in your child theme works as a way of adding little bits of extra code into WordPress/WooCommerce without making huge modifications to other areas or having to search for specific files. You can easily add and remove functions to/from the file when you need to. If you put something in and for some reason the site breaks, delete what you added. If your site is live and high traffic, test any changes on a copy of the site first.

If you get stuck, 99% of the time someone else has been in the same position and there are answers on Google :)
 

Janjesant

New Member
I used to be like that - if you're not used to it then it can be daunting. Just remember:
  • ALWAYS make a backup of any files you're changing which you can switch back to in case you run into an error and get lost trying to fix it.
  • If you're doing major changes or anything database related then do a whole site backup (not necessary for changes like this if you already have daily backups in place). If you don't have daily backups in place, install Updraft Plus (free) and start doing them
  • Never make changes to plugin files or theme files directly, as when the plugins or themes are updated your changes will be lost. Always work from a child theme and use your functions.php file to add in custom functions.
  • Make sure you can access to the site by FTP in case something goes wrong and you need to replace files manually. Modern versions of WordPress have all sorts of recovery features which can help, but FTP is easier. If you need an FTP client, I recommend FileZilla (free) as it's easy to use.
The functions.php file in your child theme works as a way of adding little bits of extra code into WordPress/WooCommerce without making huge modifications to other areas or having to search for specific files. You can easily add and remove functions to/from the file when you need to. If you put something in and for some reason the site breaks, delete what you added. If your site is live and high traffic, test any changes on a copy of the site first.

If you get stuck, 99% of the time someone else has been in the same position and there are answers on Google :)
Many thanks! That helps a lot.
 

Mar

Moderator
HI @the_lyall thank for you share your knowledge here, because i have some issue when i add php code in my child theme (i will have to contact support about this one day), can i add the functions.php with Code Snippets plugin?
I have successfully added the Carrier icons in my site. I use Code Snippets plugin for the snippets. I don't think the support team is willing to help in this task. Try it.
 

chris37

Well-Known Member
I have successfully added the Carrier icons in my site. I use Code Snippets plugin for the snippets. I don't think the support team is willing to help in this task. Try it.
I was referring about the issue i have when i add code in my child theme .(is not working properly when i add the code there.) This is the issue i must to info the team for they fix in my theme.
Thank for your answer about the code snippets I will give it a try.
 

Direct Webstore

Well-Known Member
MAIL:

data:image/png;base64,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
Thank God I only use free shipping. ;)
 

StanHansen

New Member
I've been down that CSS rabbit hole myself. Your tips and tricks make it so much easier to customize shipping visuals. However, it also helps to use a vector image generator. Kudos for sharing the wisdom – you're making the coding journey smoother for all of us!
 
Last edited:
Top