Problem with link image – Import Product with csv
-
Hi,
I’m trying to upload products with csv.
But keep getting the following error: “Not able to attach”
the link in the cell is the following: https://www.appsheet.com/template/gettablefileurl?appName=WAKEUP-INVENTARIO-6283747&tableName=UX&fileName=UX_Images/31.Foto%201.105115.png
I don’t know how to fix it
Help me
-
Hi there,
Thanks for reaching out.
It seems like the issue is with the image URL, can you try to replace the image URL with a different one. For example, upload the image in your WordPress Media Library and use that?
Let me know how it goes!
Best,
Hi, Thanks for the reply,
I have to upload more than 500 products and i am using appsheet to collect the data have a csv, unfortunately i cannot proceed with a manual upload.
What’s the problem with the link? It has a known extension, .png
I can understand your concern, but we need to make sure that the error is originating from that image link.
Can you just try to upload the CSV with a single product, with a different image?
It will help us to narrow down the issue.
Best,
Hello,
It looks like your image file contains a space which is converted to %20. Can you replace that with something else such as
-
or_
, and try again?Alternatively, you can pre-upload images to your Media Library and then define the filename in your CSV:
https://woocommerce.com/document/product-csv-importer-exporter/#images
@daniyalahmedk
I tried to load a pre-loaded image, and the image displays correctly. So the problem is the link.@maykato
unfortunately i can’t edit the link, it’s the one generated directly from google appsheet.
woocommerce not reading% 20?Hi @pakofocus
Thank you for the update. The problem really seems to be loading the image from that specific link.
unfortunately i can’t edit the link, it’s the one generated directly from google appsheet.
woocommerce not reading% 20?As a general rule, a URL should not contain white spaces. The best practice is to either encode it using the percent-encoding (
%20
), or to replace it with URL-safe characters, like-
,_
or+
.That said, WooCommerce is trying to read the URL as
%20
, while the AppSheet URL is using a plain white space. Please try replacing the%20
on your cell with a plain white space, so it matches the exact Appsheet URL. You can copy and paste the link below:
https://www.appsheet.com/template/gettablefileurl?appName=WAKEUP-INVENTARIO-6283747&tableName=UX&fileName=UX_Images/31.Foto 01.105115.png
Let us know how it goes.
@hegenberg
I thank you for the answer, really!
I tried as you suggested and unfortunately it didn’t work.I also tried using +, character with which the link is reachable, but woocommerce keeps giving error.
I really can’t figure out how to fix it.
Do you have any other ideas, suggestions? Don’t abandon me pls
@maykato @hegenberg
The problem doesn’t seem to be space, I was able to generate a link with no spaces, like the following:But I keep getting the same error over and over:“Not able to attach”
But woocomerce is able to read the parameters after “?”, I wait for you
- This reply was modified 2 years, 6 months ago by pcatapan.
Hello @pakofocus,
So that we can go ahead with troubleshooting this issue and try to fix it, may I ask you to share the following?
- Screenshot of the page showing the error message
- A sample CSV file with the product that includes the image link (you can use uploadr.eu or Dropbox/Google Drive to upload the file and share the link)
- Your system status: You can find it via WooCommerce > Status. Select “Get system report” and then “Copy for support”. Once you’ve done that, paste it here in your response.
I recommend https://snipboard.io for easily sharing screenshots – please follow the instructions on that page, then paste the URL in this thread. It works with Chrome, Firefox, Safari, and Edge browsers.
We look forward to hearing back from you.
Hi @rainfallnixfig ,
Sure, I am happy to share what you asked me.
I Hope this will fix the problem! Thanks for all!1) Screen of page that showing the error : https://snipboard.io/8wRT1i.jpg
2) CSV that I am using : https://docs.google.com/spreadsheets/d/1RCJhtt-4wUE_i_U-wqP_f-2KW0Ax1WByCMS5blBcKg4/edit?usp=sharing
3) System status :
### WordPress Environment ### WordPress address (URL): https://wakeupstore.it Site address (URL): https://wakeupstore.it WC Version: 6.5.1 REST API Version: ? 6.5.1 WC Blocks Version: ? 7.4.3 Action Scheduler Version: ? 3.4.0 Log Directory Writable: ? WP Version: 5.9.3 WP Multisite: – WP Memory Limit: 256 MB WP Debug Mode: – WP Cron: ? Language: it_IT External object cache: – ### Server Environment ### Server Info: LiteSpeed PHP Version: 7.4.29 PHP Post Max Size: 64 MB PHP Time Limit: 180 PHP Max Input Vars: 10000 cURL Version: 7.83.0 OpenSSL/1.1.1o SUHOSIN Installed: – MySQL Version: 5.5.5-10.3.34-MariaDB-cll-lve Max Upload Size: 64 MB Default Timezone is UTC: ? fsockopen/cURL: ? SoapClient: ? DOMDocument: ? GZip: ? Multibyte String: ? Remote Post: ? Remote Get: ? ### Database ### WC Database Version: 6.5.1 WC Database Prefix: wput_ Dimensione totale database: 23.05MB Dimensione dati database: 16.26MB Dimensione indice database: 6.79MB wput_woocommerce_sessions: Dati: 0.42MB + indice: 0.02MB + motore InnoDB wput_woocommerce_api_keys: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_woocommerce_attribute_taxonomies: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_woocommerce_downloadable_product_permissions: Dati: 0.02MB + indice: 0.06MB + motore InnoDB wput_woocommerce_order_items: Dati: 0.05MB + indice: 0.02MB + motore InnoDB wput_woocommerce_order_itemmeta: Dati: 0.13MB + indice: 0.13MB + motore InnoDB wput_woocommerce_tax_rates: Dati: 0.02MB + indice: 0.06MB + motore InnoDB wput_woocommerce_tax_rate_locations: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_woocommerce_shipping_zones: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_woocommerce_shipping_zone_locations: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_woocommerce_shipping_zone_methods: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_woocommerce_payment_tokens: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_woocommerce_payment_tokenmeta: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_woocommerce_log: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_actionscheduler_actions: Dati: 1.42MB + indice: 1.53MB + motore InnoDB wput_actionscheduler_claims: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_actionscheduler_groups: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_actionscheduler_logs: Dati: 1.44MB + indice: 0.63MB + motore InnoDB wput_brizy_logs: Dati: 1.52MB + indice: 0.00MB + motore InnoDB wput_commentmeta: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_comments: Dati: 0.11MB + indice: 0.09MB + motore InnoDB wput_links: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_options: Dati: 4.25MB + indice: 0.14MB + motore InnoDB wput_pmxi_files: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_pmxi_hash: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_pmxi_history: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_pmxi_images: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_pmxi_imports: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_pmxi_posts: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_pmxi_templates: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_postmeta: Dati: 3.25MB + indice: 1.36MB + motore InnoDB wput_posts: Dati: 0.11MB + indice: 0.06MB + motore InnoDB wput_termmeta: Dati: 0.08MB + indice: 0.06MB + motore InnoDB wput_terms: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_term_relationships: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_term_taxonomy: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_tm_taskmeta: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_tm_tasks: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_usermeta: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_users: Dati: 0.02MB + indice: 0.05MB + motore InnoDB wput_wc_admin_notes: Dati: 0.06MB + indice: 0.00MB + motore InnoDB wput_wc_admin_note_actions: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_wc_category_lookup: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_wc_customer_lookup: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_wc_download_log: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_wc_order_coupon_lookup: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_wc_order_product_lookup: Dati: 0.02MB + indice: 0.06MB + motore InnoDB wput_wc_order_stats: Dati: 0.02MB + indice: 0.05MB + motore InnoDB wput_wc_order_tax_lookup: Dati: 0.02MB + indice: 0.03MB + motore InnoDB wput_wc_product_attributes_lookup: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_wc_product_download_directories: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_wc_product_meta_lookup: Dati: 2.52MB + indice: 1.80MB + motore InnoDB wput_wc_rate_limits: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_wc_reserved_stock: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_wc_tax_rate_classes: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_wc_webhooks: Dati: 0.02MB + indice: 0.02MB + motore InnoDB wput_wt_iew_action_history: Dati: 0.02MB + indice: 0.00MB + motore InnoDB wput_wt_iew_mapping_template: Dati: 0.02MB + indice: 0.00MB + motore InnoDB ### Post Type Counts ### attachment: 82 brizy-global-block: 1 brizy-layout: 1 brizy-project: 1 brizy-saved-block: 6 custom_css: 2 nav_menu_item: 12 page: 5 post: 1 product: 5 product_variation: 4 shop_coupon: 1 shop_order: 89 wp_block: 2 wp_global_styles: 1 ### Security ### Secure connection (HTTPS): ? Hide errors from visitors: ? ### Active Plugins (5) ### Brizy Pro: by Brizy.io – 2.4.0 Brizy: by Brizy.io – 2.4.0 Site Kit by Google: by Google – 1.74.0 WooCommerce Payments: by Automattic – 4.1.0 WooCommerce: by Automattic – 6.5.1 ### Inactive Plugins (0) ### ### Settings ### API Enabled: – Force SSL: – Currency: EUR (€) Currency Position: left Thousand Separator: , Decimal Separator: . Number of Decimals: 2 Taxonomies: Product Types: external (external) grouped (grouped) simple (simple) variable (variable) Taxonomies: Product Visibility: exclude-from-catalog (exclude-from-catalog) exclude-from-search (exclude-from-search) featured (featured) outofstock (outofstock) rated-1 (rated-1) rated-2 (rated-2) rated-3 (rated-3) rated-4 (rated-4) rated-5 (rated-5) Connected to WooCommerce.com: – Enforce Approved Product Download Directories: ? ### WC Pages ### Shop base: ? L'ID della pagina è impostato ma la pagina non esiste Carrello: #1701 - /cart/ Pagamento: #1702 - /checkout-2/ Il mio account: #1710 - /my-account-2/ Termini e condizioni: ? La pagina non è impostata ### Theme ### Name: Blocksy Child Version: (aggiornamento alla versione 0 disponibile) Author URL: Child Theme: ? Parent Theme Name: Blocksy Parent Theme Version: 1.8.34 Parent Theme Author URL: https://creativethemes.com WooCommerce Support: ? ### Templates ### Overrides: blocksy/woocommerce/cart/cart.php blocksy/woocommerce/cart/mini-cart.php blocksy/woocommerce/content-widget-product.php blocksy/woocommerce/content-widget-reviews.php blocksy/woocommerce/myaccount/my-account.php blocksy/woocommerce/product-searchform.php blocksy/woocommerce/single-product/tabs/tabs.php ### WooCommerce Payments ### Version: 4.1.0 Connected to WPCOM: Sì Blog ID: 197303436 Account ID: acct_1JWLEk2H5EoJisVF ### Action Scheduler ### Completato: 4.759 Oldest: 2022-04-22 23:45:34 +0000 Newest: 2022-05-23 23:25:24 +0000 Operazione non riuscita: 47 Oldest: 2021-09-18 17:55:09 +0000 Newest: 2022-05-23 09:43:52 +0000 In attesa: 1 Oldest: 2022-05-24 14:07:08 +0000 Newest: 2022-05-24 14:07:08 +0000 ### Status report information ### Generated at: 2022-05-23 23:32:36 +00:00
@rainfallnixfig
I managed to trace the function that manipulated the url:
In the wc-rest-funcions.php file.function wc_rest_upload_image_from_url( $image_url ) { ... $file_array = array(); $file_array['name'] = basename( current( explode( '?', $image_url ) ) ); ... }
I changed the affected string as follows :
$file_array['name'] = basename( $image_url );
Now the questions is I can created a plugin for to change a basic functions of woocommerce?
To prevent my changes from being deleted on the first update.Thanks
Hi @pakofocus
Good to know you were able to trace the function that manipulated the URL, and have now changed the affected string.
I can created a plugin for to change a basic functions of woocommerce?
To prevent my changes from being deleted on the first update.We recommend incorporating the change in your child theme. The system status shows you are already using a child theme (Blocksy Child). That way it will be safe during a theme update and will not get removed.
Do let us know if we can be of further assistance.
To manipulate a main function, just call it in the child theme?
Won’t this cause conflicts?
Hi @pakofocus
Our suggestion is to make any/all changes in the child theme so that theme updates don’t wipe it out (which will happen if changes are done in the theme files directly).
As for functions calling or overriding, if not done the way it should be, will certainly give trouble. Support for custom coding is beyond the scope of support we are able to provide in this forum.
If you need help taking care of that, you can consider consulting with the WooCommerce Customizations Partners. https://woocommerce.com/customizations/`
I hope this clarifies any confusion. ??
Cheers
This thread has been inactive for a bit, so I’m going to mark it closed.
Please feel free to open a new thread if you have any other questions.
- The topic ‘Problem with link image – Import Product with csv’ is closed to new replies.