-
Posts
1,061 -
Joined
-
Last visited
-
Days Won
80
Content Type
Profiles
Forums
Gallery
Downloads
Articles
Store
Blogs
Everything posted by the.rampage.rado
-
Pseudo-automation of data import (product combinations).
the.rampage.rado posted a question in Technical help
Currently I have many products that are on preorder with my shop. All of them are 0 stock for all combinations (of size and color) and I order them if from my supplier if an order comes in. The issue is that my supplier does not provide me with machine readable stock information that I can use. A workaround I tried yesterday was with CHATGPT to parse the pages and visually scan them - not good results, 20% errors. But the bot recommended a Python script - I add a bunch of pages, the code gives me a list (currently) formatted as: "REF_Nummber": [42, 42.5, 43, 44, 44.5, 46.5], with sizes. And the quality is above 98%. There are still some errors here and there but I don't care if the percentage is that high. Every product I have for this selection is only 1 color so the combinations per product are 1x N (N = number of sizes available for purchase). I want the color in the combinations so the customer can filter by it. The bad thing is that I was unable to find how I can manipulate thirty bees to sync the combinations to those values. Every combination has its own id. Even if I manage to delete unneeded combinations I still end up with the situation that one of them was default and the front end breaks (a message is thrown to the customer to select another combination). At this point I gave up on attempts to add combinations via sql as I think it will be quite hard to implement by myself. A module that can create combinations based on a list of values and save them also would be helpful! Does anybody have any clues how something similar can be achieved? Currently I have the following routine. 1. pull the available sizes in the same format as above from my install 2. pull the available sizes with my supplier 3. compare both arrays and spit out movement changes - add or delete sizes and I regenerate the combinations via the Comb. generator. This saves me 80% or more of my time but I still want to implement further automation if possible. -
Uninstall HTML Block v1.2.1 - by thirty bees if you don't plan on using it for another information in this place (the fourth column).
-
All front facing translations are in Front office translations and Installed Modules translations sections. The errors a customer can see are in Error message translations. Keep in mind that due to potential server configuration limitations thirty bees is coded that you have to click Save (or Save and Stay) on every section - so if you want to translate 2 modules - you will have to translate the first, save, then the second, etc. Same with the Front, BO and other main sections.
-
(this post will be shorter as I once wrote it to the end and mis-clicked, exiting the page and I don't have the nerves to write it once again... 😄 ) In general despite using PS for over 10 years and thirty bees since the start of the project I only discovered how powerful the SQL manager is couple months back. Using it you can make very custom queries for almost every part of your shop. Currently I use it mostly for data normalization for my products catalog but you can think of many other useful queries to load and use on daily basis. Keep in mind that those queries should be read only (I believe). Or could they be writing to the table also? 🙂 I use the following examples almost daily to speed up my manual work with the catalog. The queries could be very powerful for small/medium shops that don't do automatic import of items and all data is entered by hand to normalize the data and improve your shop appearance. Please, keep in mind that every query should be adjusted with your table prefix (in this case tb_, it's not the real one in my case, don't try to hack me! 😛) and your personal parameters - id_lang, id_category, etc. 1. Pull out all products without WHS price - if you started your shop not populating this field and later discovered that Stats module relies on it to calculate profit use this query to sift through all your products. SELECT p.id_product, pl.name FROM tb_product p LEFT JOIN tb_product_lang pl ON p.id_product = pl.id_product WHERE (p.wholesale_price IS NULL OR p.wholesale_price = 0) AND pl.id_lang = 2 -- change language here GROUP BY p.id_product; 2. Pull products associated with Home - if you don't use Featured products module to display set of products in your homepage you don't need to associate products with home category (id 2 by default). If home is the default category for products this messes up the navigation of customers and does not display the proper breadcrumbs. Better remove the association. SELECT p.id_product, p.reference, pl.name FROM tb_product p JOIN tb_category_product cp ON p.id_product = cp.id_product JOIN tb_category c ON cp.id_category = c.id_category JOIN tb_product_lang pl ON p.id_product = pl.id_product JOIN tb_product_shop ps ON p.id_product = ps.id_product WHERE c.id_category = 2 -- by default id.category for Home is 2 AND pl.id_lang = 2 -- change according to your preferred language GROUP BY p.id_product; 3. Cyrillic letters in EN language - when your default lang is Cyrillic and you forget to enter EN (or other non-Cyrillic) title of the product it is written with the same value in both languages in title/meta/images, which is not good. SELECT p.id_product, pl.name, pl.description, pl.description_short, pl.meta_title, pl.meta_description, pl.meta_keywords, pl.link_rewrite AS friendly_url, il.legend AS image_description FROM tb_product p JOIN tb_product_lang pl ON p.id_product = pl.id_product LEFT JOIN tb_image i ON p.id_product = i.id_product LEFT JOIN tb_image_lang il ON i.id_image = il.id_image AND il.id_lang = pl.id_lang WHERE pl.id_lang = 4 -- adjust to your id_lang AND (pl.name REGEXP '[А-Яа-яЁё]' OR pl.description REGEXP '[А-Яа-яЁё]' OR pl.description_short REGEXP '[А-Яа-яЁё]' OR pl.meta_title REGEXP '[А-Яа-яЁё]' OR pl.meta_description REGEXP '[А-Яа-яЁё]' OR pl.meta_keywords REGEXP '[А-Яа-яЁё]' OR il.legend REGEXP '[А-Яа-яЁё]') GROUP BY p.id_product; 4. < 50 characters in description SELECT pl.id_product, pl.id_lang, pl.description, LENGTH(pl.description) as description_length FROM tb_product_lang pl WHERE LENGTH(pl.description) < 50 -- adjust to your liking 5. < 50 characters in short description SELECT pl.id_product, pl.id_lang, pl.description_short, LENGTH(pl.description_short) as short_description_length FROM tb_product_lang pl WHERE LENGTH(pl.description_short) < 50 -- adjust to your liking 6. Products associated with a category - useful when you want to move products from one category SELECT p.id_product, p.reference, pl.name FROM tb_product p JOIN tb_category_product cp ON p.id_product = cp.id_product JOIN tb_category c ON cp.id_category = c.id_category JOIN tb_product_lang pl ON p.id_product = pl.id_product JOIN tb_product_shop ps ON p.id_product = ps.id_product WHERE c.id_category = 35 AND pl.id_lang = 2 -- adjust id_category and id_lang GROUP BY p.id_product; 7. Products without attachment files - your product must have attachment files (catalog, data sheet, some other stuff) but you forget to associate it on time? SELECT pl.id_product, pl.name FROM tb_product_lang pl LEFT JOIN tb_product_attachment pa ON pl.id_product = pa.id_product WHERE pl.id_lang = 4 -- adjust display id lang AND pa.id_attachment IS NULL GROUP BY pl.id_product; 8. Custom modules queries - in this case products that don't have associated size chart from the Warehouse size chart module: SELECT pl.id_product, pl.name FROM tb_product_lang pl LEFT JOIN tb_iqitsizeguide_product sg ON pl.id_product = sg.id_product WHERE pl.id_lang = 4 -- adjust id_lang AND sg.id_guide IS NULL GROUP BY pl.id_product; 9. Description contains XYZ string - I used it to change some table formatting that was applicable to only few products SELECT pl.id_product, pl.id_lang, pl.description, pl.description_short FROM tb_product_lang pl WHERE pl.id_lang IN (2, 4) -- change id_lang to search in the lang you need AND pl.description LIKE '%XYZ%' -- change XYZ to the string you are searching for; ...But what does the military have?! 🙂 Can you think of other useful queries? Write them down as a comment!
-
- 1
-
Unsupported Module Version - plus 500 Server Error
the.rampage.rado replied to Fizzwizz's topic in English
The error is due to that you currently use php 8.2 but your thirty bees is build for 7.4. If you changed the server php version - roll it back to 7.4. Update your Core updater, go to Settings and select target PHP version to 8.2, update your store, then switch back your server to 8.2. Keep in mind that if you don't know what is going on it's better to stick to 7.4 as it's more forgiving than any 8.x version as they introduce MANY changes and you will most definitely have issues with theme/non-native modules. If you have not switched the server php version - ask your hosting and tell them that your site is crashing because of the update that they probably did and ask for them to revert this or show you how to change it yourself. Regarding module updates: Go to Modules. Click "Check for update" All available updates from thirty bee's native modules will show up. Update -
If you sell different types of those (different sizes, different bases, etc.) I would configure it as follows: Attributes: Wood/base color: wood1; wood2; wood3; wood4 Mane: mane1; mane 2 Unicorn: yes, please; just normal horse Create a normal product, put base price (the lowest of all combinations if you have differences in those). Go to Combinations - use Product Combination generator Select and add all applicable attributes from all applicable attribute groups If you have some price increases for certain attribute put in the respective field to the right. Click 'Generate these combinations'. You have 16 combinations for this product. If you have sizes of this product you can make another product or add it here and also put the differences in prices for it (you will have to adjust the price increases and balance them if the different woods also have price differences).
-
Updating from 1.5.1 to Bleeding Edge Breaks Product Images
the.rampage.rado replied to Rhapsody's question in Updating thirty bees
He's now using them so it's installed, yes. Officially out of ideas! 😄 -
Updating from 1.5.1 to Bleeding Edge Breaks Product Images
the.rampage.rado replied to Rhapsody's question in Updating thirty bees
Check if mod_rewrite is on. -
Updating from 1.5.1 to Bleeding Edge Breaks Product Images
the.rampage.rado replied to Rhapsody's question in Updating thirty bees
The code looks proper. In any case there is some local issue as the regeneration and the rewrite as a whole works with at least few installations (including mine 3 production installs and 2 test installs). -
Nearly everything is possible - matter of manpower and money. 😞
-
I have now upgraded one shop to 1.5.1 smtp missing
the.rampage.rado replied to Havouza's topic in English
If your sender address is different from the one you use to actually send it every modern email provider will flag this as spam and will refuse to deliver it in most of the time. -
I have now upgraded one shop to 1.5.1 smtp missing
the.rampage.rado replied to Havouza's topic in English
This is saved in Preferences->Shop Contacts. This setting is multistore aware so if you use Multistore you have to have different email per domain here otherwise you will be flagged as spam. -
Updating from 1.5.1 to Bleeding Edge Breaks Product Images
the.rampage.rado replied to Rhapsody's question in Updating thirty bees
Sorry for the late response. The original file is kept without additional attributes: Check which pic ID error out and download and check their files. There was before similar issue here after the image rewrite and in this case the source images were somehow corrupted on the server. If this is not the case I'm afraid you will have to wait for datakick for advise. 😕 -
I have now upgraded one shop to 1.5.1 smtp missing
the.rampage.rado replied to Havouza's topic in English
1. Install one of the modules (not both as you can't use them simultaneously) and configure it: 2. Go to Advanced Parameters -> Email and choose the module you installed. (here I have another useful module installed so don't get confused, if you use it you have to run both one of the transport modules and the Queue module): 3. Send test email. If the mail don't arrive your module configuration is not OK. -
Sorry to hear that! 😞 https://github.com/friends-of-presta/security-advisories/blob/main/_posts/2024-02-29-simpleimportproduct.md Unfortunately this happens, no system is 100% secure. The remedy is regular updates of core and all modules to the latest versions.
-
Updating from 1.5.1 to Bleeding Edge Breaks Product Images
the.rampage.rado replied to Rhapsody's question in Updating thirty bees
Yes, the url is different now. Can you check if your active htaccess file contains (when on edge of course) contains lines as: RewriteRule ^products/([0-9])(\-[_a-zA-Z0-9\s-]*)?/.+?([2-4]x)?\.(gif|jpeg|jpg|png|webp)$ %{ENV:REWRITEBASE}img/p/$1/$1$2$3.$4 [L] RewriteRule ^products/([0-9])([0-9])(\-[_a-zA-Z0-9\s-]*)?/.+?([2-4]x)?\.(gif|jpeg|jpg|png|webp)$ %{ENV:REWRITEBASE}img/p/$1/$2/$1$2$3$4.$5 [L] RewriteRule ^products/([0-9])([0-9])([0-9])(\-[_a-zA-Z0-9\s-]*)?/.+?([2-4]x)?\.(gif|jpeg|jpg|png|webp)$ %{ENV:REWRITEBASE}img/p/$1/$2/$3/$1$2$3$4$5.$6 [L] etc.. which are responsible for this rewrite. -
Updating from 1.5.1 to Bleeding Edge Breaks Product Images
the.rampage.rado replied to Rhapsody's question in Updating thirty bees
Do you have the source files in the respective directory before the regeneration starts? -
Updating from 1.5.1 to Bleeding Edge Breaks Product Images
the.rampage.rado replied to Rhapsody's question in Updating thirty bees
When you update to edge you are seeing the image rewrite that will be part of the next major version. Steps to have no issues: 1. update to edge - both your files and database. 2. Go to Images and set your settings - preferred image format - better use webp as png does not have any improvement over webp. Select Image quality (this will be empty on your first update, if you now update again it will be populated BUT I'm not sure if this can be 0 (as the quality is from 1 to 100, 100 being ze best quality, 70 is recommended). Decide if you want to keep the original file in Source file extension. The rest is not important. Save. 3. On the top of this page you should see additional table column named Image Entities - each row should have entries as this assigns the usage of each generated file. This should be populated correctly if you updated just yesterday, as there was a bug bug this is now fixed in edge. 4. Reset indexation status on all image types (bottom of the page). Regenerate all images - wait for this to complete, don't leave the page. 5. Go to SEO & URLs and turn OFF friendly URLs, save, then turn it back ON (if you use friendly URLs as you should). This will regenerate the part of your htaccess file that serves the images as there is change too. 6. Clear your Cache and open your frontend - now if your theme is coded right you should see your images once again - smaller, optimized and better than ever before. If you don't see them check your theme and/or modules if they look for hardcoded jpg files. My theme did for some image types and the changes was pretty simple, just stick to a file format and swap the extension in the code. Keep in mind that this image rewrite handles pretty much every image on your shop (except the favicon) and whenever you have hardcoded .jpg you will have to fix this - theme, shop logo, custom menu module, custom layered navigation module, manufacturer logos, attribute textures, etc. 7. Additionally go to your Sitemap module (update it first to the last version). Select the proper image formats that should be included (this is new functionality) then save and regenerate your sitemap(s). (this is not directly related to your issue but should be done after the update to optimize your results as the sitemaps will include the new URLs for the images) Get back to us if you managed to get it working and if not we will try to help again! 😉 -
Today I tried making a query that sorts the products by last edit date using date_upd column. The issue is that this value gets changed even if we save other products in the same category (lets say changing the position in the category). My use case is that I have couple of categories that I want to manually (i don't have a automatic way to do so) edit (stock and combinations) and I want an option to sort those products so I start from the one that is updated furthest back in time so not to loose hours on repetitive work and (sort of) keep this list of products optimized. Could there be any workarounds around that?
-
Need some help. Info inside.. Thanks
the.rampage.rado replied to bhtoys's question in Technical help
-
Need some help. Info inside.. Thanks
the.rampage.rado replied to bhtoys's question in Technical help
There is a thread dedicated to this product. Probably you should ask there? -
Front and Back Office are blank/white
the.rampage.rado replied to Bside2234's question in Technical help
Despite that worked go in Core updater, configure it to update to your tb version and your php version and check if there are any file changes. -
@datakick will make the update but I hope to receive couple more entries.
-
Front and Back Office are blank/white
the.rampage.rado replied to Bside2234's question in Technical help
First of all check with your hosting what changes they made to the environment and 98% this will give you a clue how to proceed. If they say there are no changes you can look into your server error log there you will find the reason for this crash. In general it's strongly recommended to update from 1.3 to at least 1.5.1 as there are many security hole fixes since 1.3. -
Duplicate product is not working fine on TB1.5.1
the.rampage.rado replied to netamismb's topic in English
I updated almost 1 month ago and I see no difference in the sales. I see an increase but this is not because of this change, this it is offseason for me. Domain authority is much more important. Even if you change your product URLs those will get fixed really quickly in google's index if your domain has good authority. For images - do you have statistics how much visitors you get directly from image search?