Cassim Posted January 31, 2018 Posted January 31, 2018 Hallo their. I see a lot of modules out their for PS 1.6 that create automatic meta information but non for TB. Can any of you recommend a great module for this ? I like to be able to custom the way it creates the title Like this : Buy %productname from %brandname to %price Any one know how to do this ?
datakick Posted January 31, 2018 Posted January 31, 2018 my module has mass-update functionality that could be used for this. You can try it, there's 14 day free trial period
Cassim Posted January 31, 2018 Author Posted January 31, 2018 @datakick said in Automatic generate meta title/meta description: my module has mass-update functionality that could be used for this. You can try it, there's 14 day free trial period Im not looking for a import/export module. I need a module that updates the text
datakick Posted January 31, 2018 Posted January 31, 2018 @cassim my module has mass-update functionality. That's what you want.
30knees Posted January 31, 2018 Posted January 31, 2018 @cassim said in Automatic generate meta title/meta description: Im not looking for a import/export module. I need a module that updates the text The module does that, too. It's extremely powerful. Take a look at the demo.
30knees Posted February 8, 2018 Posted February 8, 2018 @datakick said in Automatic generate meta title/meta description: my module has mass-update functionality that could be used for this. You can try it, there's 14 day free trial period How would I automatically generate the title and description using the module? I'm having trouble figuring that out. Thank you
zimmer-media Posted February 8, 2018 Posted February 8, 2018 @30knees @Cassim I use for my shops an older module from the PS forum. Here I can decide, for example, whether the meta-data description should be made from the short description of the product or from the normal long description, etc. Here I can also choose whether all products should get a new meta description or only those without content. Also a separate update of the categories is possible. The module has only two problems incompatible with php 7 and the seoupdater.php has to be adapted since it has 255 characters as standard (but is the minor problem of that). The entries with ,0,255)).'\' '; find and correct ;) I personally wanted to expand this module for myself with a cronjob, I have not spent any time on it yet 01518130288691seoupdater 0.4.zip
datakick Posted February 9, 2018 Posted February 9, 2018 Hi @30knees, datakick module has it's own expression language. Expressions are something like excel formulas, and you can find them everywhere in my module (if you look hard enough). In lists (csv export), xml templates, mass updates, and even imports. I will show you how expression works on List example. I will create a list that will show products and their reviews. To start, create a list based on Products collection, and then in dataset tab join Review collection: Now we have list displaying all my products with their review. Something like this: In left column you will find any field from both products and reviews, and you can add it to list output. But you can also edit column, and change it's expression. For example, when I click on Review Title column in left panel, I get this As you can see, expression says revwsReview.title. revwsReview is collection alias of Review collection, and title is field from this collection. This is the easiest expression possible, it simply returns review title. But we can change it, for example to: products.name + ': ' + toLowerCase(revwsReview.title) This will make the column display name of the product concatenated with review title, in lowercase: And we can do some crazy stuff, there are plenty of function you can use. We have conditionals: if(products.basePrice < 100, 'cheap', 'expensive') will show text cheap/expensive based on product price arithmetics: (products.basePrice - products.wholesalePrice) calculates your profit margin. string operations: replace(products.name, 'm', '-') will replace character m with dash in product name Now, you can use these expressions anywhere. Here we used them to format list output. But you can use them to define conditions as well - you can filter your list and show only subset of data. Or you can use them to highlight some rows - in above example I highlighted cheap stuff. And, you can use them else in the system. For example, in Mass Update. Now I'm getting back to your original question. Mass Updates To generate meta title, just create new mass update based on Products collection. First step is to define what products to update. By default, all products would be updated. To change this, switch to Dataset tab, and create a condition. I will create a condition that match only products with 'IBIZA' in name: The condition builder let you easily create some common conditions in UI. But if you want, you can always click on the condition, and change it whatever you want. Now, switch to the fields list, and find field you want to update. In our case, it's Meta title. Once you add it to list of Fields to update, click on in once again to edit: As you can see, the Update action is set to 'Set value', and New value is empty. If you have executed mass update now, it would set empty meta title. We don't want that. So, click on Action, and choose Custom expression. Now you can enter your update expression. For example product.name +' just for ' + round(toNumber(product.basePrice),0) + ' EUR' Mass update shows you how this will impact your data. In preview list, you see current value, and new value, so you can adjust your update expressions without actually modifying your data: Once you are satisfied, you can click on Execute Update button, and your products will be updated. Simple as that. You can, also, save this mass update and use it later. You can also schedule it to run every day or every hour, so your meta title will stay in sync with price. Parameters This is one thing that's very useful, but not very people knows about it. You can create a parameter and use it in expression. You will need to enter it's value when you run the mass update (or list,...). This let you create reusable mass update. I'll show on example. Say you want to add 20% profit margin to your product price. You can create mass update that will use wholesale(purchase) price to calculate product price using this expression: product.wholesalePrice * 1.2 Or, we can make this mass update generic, and create numerical parameter margin. Once we create this parameter, we can use it in our expressions: product.wholesalePrice * ((100 + runtime.margin)/100) Now, when you run this mass update, you will need to provide value for margin parameter, and this value will be used in expression during runtime (parameters are accessible using runtime alias) Following example don't show wholesale price, but it's $50. New base price = 50 * (100 + 40 / 100) = $70 Uff, that was long. I hope it answered your question :)
30knees Posted February 9, 2018 Posted February 9, 2018 @datakick @zimmer-media Thanks! @datakick Great guide - I'll experiment!
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now