Nathan Wrigley: 00:02 Welcome to the WP Builds Podcast bringing you the latest news from the WordPress community. Welcome your host, David Walmsley, Nathan Wrigley.
Nathan Wrigley: 00:21 Hello there and welcome to this episode 125 of the WP Builds podcast and titled Making Your WordPress website multilingual with Amir Helzer or from WP m l. It was published on Thursday the 25th of April, 2019 my name is Nathan Wrigley from picture and word.co.uk, a small web development agency based in the north of England and I won't be joined today by David Walmsley because it's an interview day and so we'll be talking to Amir Helzer instead. Just a couple of things before we begin. If you wouldn't mind going over to the WP Builds.com website. If you find the links at the top there, the first one to mention is the subscribe link. Fill out the forms. We've got two newsletters to belong to. One alerts you to the fact that we've got a podcast coming out on Thursday. This is it and the other form on that page gets you onto our alerts subscription and that will alert you every time we come across a plugin or theme or whatever deal.
Nathan Wrigley: 01:19 As soon as I hear about it, I will send the details out to you in plain text. Also on there you can find our iTunes page and Google podcast page. We have certainly appreciate any positive ratings that you can give us there. Join our Facebook group and you can find our youtube channel and so on. In other words, that page is, everything that we do all distilled into one page and we'd certainly appreciate you being part of our community. The other pages to mention are the deals page forward slash and deals go there. If you're thinking of buying some plugins cause we've got heaps of coupon codes for notable WordPress plugins, so you might find something before black Friday. Forward slash contribute. If you would like to come on the podcast and join me and talk about something that you've recently done, something you've achieved. And the last one I suppose would be forward slash advertise. Please feel free if you're a product owner or developer, if you've got a subscription service or you've got some kind of plugin or theme, whatever that might be, which certainly appreciate having you on the podcast.
Nathan Wrigley: 02:18 Speaking of which, the WP Builds podcast is brought to you today by the page builder framework. Do you use a page builder to create your websites. The page builder framework is a mobile responsive and lightening fast WordPress theme that works with beaver builder element or breezy and other page builders with its endless customization options in the WordPress customizer. It's the perfect fit for you or your agency. Go to WP dash page builder framework.com today
Nathan Wrigley: 02:48 And WP admin pages pro. Have you ever needed to add custom admin pages to your client's WordPress dashboard but couldn't find the tools to do it? Wp admin pro is here for you. Create beautiful admin pages using your favorite page builders such as beaver builder or breezy and more. Check it out at WP admin pages, pro.com today, and we thank all of our sponsors, most sincerely for their support of the WP Builds podcast.
Nathan Wrigley: 03:21 It certainly does keep the lights on. So thank you to them. Right. Today we're talking to Amir Helzer who is from WPML and Toolset, and we're going to be spending our whole podcast talking about multilingual websites and how all this might be achieved with the enormously popular WPML plugin. He explains how it all works and he also talks about the future regarding Gutenberg and other integrations. I hope you enjoy it.
Nathan Wrigley: 03:50 Hello there. Welcome to the WP bells podcast where having an interview today, and I believe this is the third time you, you're hearing from Amir Helzer from, well, I'm going to say Toolset, but actually that's not what we're here to talk about today because we're talking about WPML so hello Amiya.
Amir Helzer: 04:09 Hello Nathan.
Nathan Wrigley: 04:10 Yeah, the third time I think you might be one of only two people who have been on the podcast twice. The other person I think is, um, Robby McCullough from beaver builder. So there you go. Good Company. Fine company. That's right. Yeah. So we're on the, we're on the call today to talk about WPML WPML if you've not used it as I haven't. So let's get that out of the way to begin with. I've not used any multilingual plugin of any description before. It is a way of translating components, parts, pages of your website so that people who don't speak in English or Chinese or whatever your native languages can understand what's on your page. And so, Amir , given the fact that I've never used it before, my, my first question I suppose is, um, well how does it work? What's the sort of workflow that one might go through? Trying to get English text on a page into say, well, Hebrew for example.
Amir Helzer: 05:04 Okay, so when you install WordPress without any plugins one of the first thing that happens is WordPress asks you which language you want to use, right? And what, what do you choose now determines the language that everything on your site will be at least everything on the Admin side. Um, and then you could theoretically, you could write a page in English a page in Spanish and a page in Italian, but these are all going to be just pages. WordPress itself doesn't have any notion of the language of the, of your content. Okay. The decision that you make in the beginning is the localization language for the WordPress admin. Yes. Okay. So WPML allows WordPress one of all languages, not only in one, and since the site has several languages, then each piece of content which you create, receives language, information, and WPML will allow you to connect between different, uh, different translations as a, as translations of the same content. So let's say you're building your homepage right now. When you have a site in an English and Hebrew, as you stated, um, you might want to set your sights, default language to English, and then you'd write the content in English, and then you'll click a little button that says, now I'm translating this page to Hebrew. And then you'd enter the Hebrew version for the homepage, which can be a literal translation, or it can be what, whatever content you feel like having an Hebrew. No. Okay. Um, and that's the, that's the essence of it. When you were, when you were using any multilingual pluggin for WordPress.
Nathan Wrigley: 06:45 Um, so from that, presumably there is no limitation on the number of languages that you wish to select. Let's say you've got a requirement to put it into 10 different languages, so long as you've got the capability to translate those 10 different languages, which we'll come onto later. Um, you've just got 10 boxes in effect to fill up.
Amir Helzer: 07:04 Yes. So in order for really to not have a real limitation on the number of languages, uh, we don't lay it out, lay them down as one next to the other one below the other so that each time you open, you work on the content in one language. Um, we do have an editor which allows you to do side by side translation, but still in that case, you'd have two languages, the original language of that content and what you're translating into. But in any case, if you have 15 languages on the, on the site, you're not going to be cluttered with same content, simultaneously in 15 languages.
Nathan Wrigley: 07:45 Okay. Um, and how does a, an end user of the website, how do they go about making the decision that I will, I should like to see this in German for example, or in Hebrew. How, how is that handled from a sort of user, a user interface point of view.
Amir Helzer: 08:01 That's what we call a language switcher. And um, as the design of the site, you can include language switchers in different places on the site. Uh, for example, on our own website, WPML dot org we've decided to place the language switch at the footer. Um, you can place it on a menu, you can place it in the header and the widget, um, you, you have a number of places where you can insert different language switchers.
Nathan Wrigley: 08:29 Okay. So basically you, you must manually select or is there some kind of automation going on whereby the browser is giving away information about the user? Maybe it's Ip address perhaps or, um, or is there another way? For example, can it translate based upon the browser language, for example.
Amir Helzer: 08:48 So first, the browser is not translating. The browser is telling WordPress that there's a visitor here, who wants to consume content in a different, in the certain language. And then WPML direct what was the show? Oh, this is the German version of that content. So let's give it to this user. But this mechanism, uh, relies on the language setting in the browser, so for instance, if you're living in Switzerland, okay, which has a four languages, we can tell by your IP which language you specifically speak. It's better to use the uh, the language setting in the browser. Um, when you, when you install a German windows and a German, um, home for instance, then the browser without your asking because the browser sees the, the language of the OS and the browser will include, um, and meta information about the user's language, which is better than the user's IP.
Amir Helzer: 09:56 Um, and WPML reads that and it can, uh, it can return the content in your language. Now, there's a plus and minus in that feature. Um, the plus is obviously it's, it's nice you go on on a, on a site and you get the language that's intended for you. That's great. The very, very big minus in that is that Google doesn't like it a lot because this would cause Google not to see other, other languages. Google goes by a URL. And if you visited the URL for the Spanish content, but the language heading in the Google request, Google tries to look like a browser. And when it goes into great efforts not to look like a robot, to look like a human, the Google requests actually include this heading. And if Google visits a German page and has a, let's say the English language preference, you'd return the English version and that would get indexed instance, the German version. So you need to consider that when you're using this feature.
Nathan Wrigley: 11:03 Ah, okay. So yeah, from an SEO point of view, how does it spit out the content? So for example, let's say my home page is, um, I, I've written it in English, but I've also made translations into German and Hebrew. Is there some sort of URL rewriting going on such that when I select to see it in German, there is a unique German URL or is it just sticking the same content on the same URL that the English one would have done? So good.
Amir Helzer: 11:31 Each language receives its own set of URLs. So for instance, on our site, the German content goes all under WPML dot org slash d okay. So all the German content sits there under the DE the virtual sub folder. Um, you could also arrange different languages, different domains or subdomains and you can add them as a, just as a language argument at the end of the URL. But in any case, it's always, uh, a unique URLs.
Nathan Wrigley: 12:04 Right. Okay. Well that makes perfect sense. I'm just talking this through. A moment ago you were talking about the, the Ui and I made, I made a mistake and sort of saying, okay, it's a bunch of boxes that you fill in. If I was to, if I was to load up, um, WPML and begin on the work of translating a website, I would like if possible, to describe what I would actually see and how I would work through the actual workflow of translating into a couple of different languages.
Amir Helzer: 12:33 So firstly you would see an installation wizard, which gets basic information about your site. What would you like your site's default language to be and what other languages do you want to have in that site? Um, and then it will ask you to choose, well, what kind of languages, which are you'd like to have and where to display it. Um, and then it lets it asks you to register WPML on our site, um, so that you can get automatic updates and that now you're, now you're really ready. And this takes about one minute to pass through this wizard. Um, and now your site has several languages. Um, and so now when you, you, you'll have two editing interfaces designed for two different needs of two different populations. One is the person building the site. Okay. He has his own needs. When you're building a site, you'll have other concerns, but you're not that interested.
Amir Helzer: 13:33 now in doing accurate translation, that's not what you right usually you'd have a lorem ipsem text. W W doesn't mean much. So you don't want to spend time translating, doing fine translation for that. Right. Um, so there's, the, the interface which would recommend to people while they're building the site and there was the interface that we'll recommend to other people when they're maintaining content translators would typically use our complete transition editor and four admins for building the site. Uh, they can do the quick and dirty translation of just clicking plus icon next to a language name and just entering the transition without really going through a translation process.
Nathan Wrigley: 14:20 Okay. Um, so now that we've got our bits and pieces on the page and on I am, I'm an editor. Let's say I've got the capability, I'm not building the site, I'm editing the site and I log in and I've got three languages say that I've got to translate into. Um, I'm trying to imagine or I'm trying to get a description of what it actually looks like on the page. So it's not side by side, although that is possible. You can, you can have your primary translation to work from. And then next to it you have the one that you're doing in say German. And then once you're satisfied with that, you click save or I guess you can keep a draft of it or what have you. And then as soon as that's done, it's all live on the site and ready to go. You don't have to configure anything else. It will work. Figure out what browser you're in and so on and so forth or what's been selected. And that's it.
Amir Helzer: 15:07 Up to you. Um, we have a more elaborate translation process because, um, I write some of the content and Dario maybe you know him, he writes some of the content that we have, another title called (sorry I don't know your name!) some content and we have translators because we ourselves don't speak all the languages that appear on our sites. So, uh, we, we separate between writing content, managing the site structure and translating the content, so ideally the work of translation should be very decoupled from WordPress administration, because many times the translators have no clue about how WordPress works. So you want to expose as little as possible settings to translators. Translators would, would typically perfer just to translate texts, meaning no short codes, no styling, definitely no settings, not different publishing. They want to give me a text, I'll translated text, I'll do it as well as they can.
Amir Helzer: 16:09 And then, uh, you determine the state of the translations once the ready in our side for instance, we set them as draft, we go over them like we click the preview button, we go over them. And when we were satisfied, we click publish. You can also set it to publish automatically. That's up to you. Um, what else? And the the same, uh, the editor that we have in our site would, uh, go through a transition dashboard, which is part of WPML, this dashboard shows you which pieces of content a new or updated. And from that point, from that place you could choose, uh, which pages you want to send to translation to which languages and by which translators.
Nathan Wrigley: 17:02 When, when we're dealing with a page on WordPress, we're often dealing with much more than just text, you know, there's images, there may be video and things like that. Does it, does it have the capability to, well let's say for example I have an image and on that image is some texts and it's important that that image is translated. Is it, is it possible to do that also?
Amir Helzer: 17:21 Yes. So this is part of our media translation plugin, which is part of WPML and that plugin does exactly what you said. It will catch the images from the content that you've sent to translation and it will ask you which of these images require localization as well because some of the image in a normal content, the majority of the images of the images just, I'll just find as as they are, but some images have text on them and you'd like to translate them. And actually this translation is a means. It's up to you to, to produce the new videos that the new images this plug in cannot do. No, no. But it does help you with the bookkeeping so that as you're sending content to translation, you indicate I need to replace these images and it keeps them in, um, in a queue for you. And then it lets you see, um, which images is needed to work on. And then you can upload the replacements per language and then WPML will insert them into the translated content. So you translate the translators would translate the content separately and maybe your art department would produce localized versions of the graphics. And then WP one, will merge them together.
Nathan Wrigley: 18:46 I can see somebody coming up with a SAS app to translate meme pictures. All the pictures with text on it automatically done for you to translate. Yeah, it's a good idea about, um, are there any situations that you know of where it's mandatory to, to include language translation? I know that there's an author, I live in the EU for how long? I don't know. But I live in the EU currently. And, um, there's a lot of law or about, you know, um, having things, for example, if I go and buy a tube of toothpaste and you look on the back of it there, the entire back is the tiniest, tiniest print cause everything's got to be in every single language. Do you know if there's any legislation throughout the world where this is compulsory to do it?
Amir Helzer: 19:32 Canada I'm almost sure that there is. Yeah. Um, and I think that in some parts of Switzerland is and I think that in Belgium, maybe your viewers, if you have some, some listeners from Belgium, they can comment on that.
Nathan Wrigley: 19:49 Do you find then that you have a, a sort of a very large population of purchases of the plugin from Canada, for example, compared to say the United States?
Amir Helzer: 19:58 Of course. Of course. So if you compare the population in Canada to the population in the US, we have a percentage far more purchases in Canada in the US.
Nathan Wrigley: 20:09 So I guess if you're a Canadian website builder, it's mandatory to have it in two languages. Something like this is absolutely perfect. Yeah. Now these days, um, go back several years and we had this lovely classic editor as it was called and it was, you know, everything was really obvious. Fast forward to today and people are editing WordPress posts and pages in all manner of ways. Gutenberg obviously now the new block editor and a whole range of page builders that have taken the WordPress world by storm. Does it, does it function with those? Is that other, any gotchas? Are there any things which you found challenging to get to work with page builders and so on?
Amir Helzer: 20:49 Challenging always. Yeah. Um, well this is one of the benefits of us being in our situation where WPML is a pretty popular plugin today that, uh, other developers listened to us and it's, uh, it makes life a lot easier for everyone, including our clients. Um, I don't want to use this as a sales call, but really buying from a market leader gets you these benefits because when you're in a position of, of a market leader, it means that it's easier for you to get the good cooperation from everyone else. Um, we just talked about Toolset earlier and you know, it's not surprising. It's not secret. That tool set is not in the same position as WPML, right? I'm, I would be the first one to admit it. WPML is more popular than Toolset. And in Toolset we see the flip side of this situation where we have to, uh, to beg for attention sometimes from others who, uh, who have more popular themes and plugins.
Amir Helzer: 21:57 And it's harder the to achieve and maintain good cooperation. Good technical cooperation. Because they have their own agenda and they have clients pressing them. So we understand the situation. We know the situation from WPML in WPML, it's way easier because you don't want to, uh, to block yourself from selling to everyone who's using WPML. It's a lot of people. So, so going to go to the original question, it's, it's, of course it's challenging, but, uh, when we contact someone who's building a popular page builder, like a beaver builder, uh, Divi, elementor of other, um, then we have very healthy and constructive corporations and we make sure that everything works. Sometimes we ask them to do little things for us, sometimes to do little things for them. Sometimes we do big things for each other. Bottom line, we have to make it work. So it works when you translate. Uh, when you create the content, let's say with Gutenberg, now we, Gutenberg saves it in a different way than the classic editor did before. Uh, so WPML uses the Gutenberg API to get the content of the text, textual content of blocks, which Gutenberg is kind enough to provide a, we save this as individual transition units and we show it in that transition editor as separate fields, which makes transition a whole lot easier.
Nathan Wrigley: 23:29 Um, and in the case of let's say, well for example, a lot of the questions that we had in our WP Builds Facebook group where we're related to Elementor on, I'll kind of, I'll kind of just use that as one example of a non Gutenburg page builder if you like. Um, so from my point of view, not having used it before, it is the Ui for translating separate and distinct from Elementor or does does the, the translation take place within the Elementor interface?
Amir Helzer: 23:59 Um, we, we support both options and both in my opinion, are needed. Um, most of the content that you would translate, uh, you just need to translate the texts because let's say that you've built a nice template with uh, with elementor, okay. And now you want to have this template in several other languages. Normally you're just, you want to use the same design that you've created with all the nice styling and positions and images and you want to have it in different texts. In that case, we would commend you to use our built in translation editor in WPML, which just allows you to translate texts. So later on when you view this page in different languages, you don't need to rebuild it from scratch with all the designs. Now if you want to have a different design per language, which also happens, or let's say you're doing your homepage and you want to have a pixel accurate control. So if you have a heading in German that's almost twice as long as English, you don't want it to overflow to, to deal with it, little changes. Okay. So in that case you could start a transition from elementor, translate and create separate designs per language.
Nathan Wrigley: 25:16 Wow, that's fascinating. I did not know that. So the sky really is the limit. You can make everything bespoke. You could change for example, um, as we described earlier where you can change, um, media images, you can change like row background images and things like that. So it had a, I don't know, a map of Germany instead of a map of England or something, but I wasn't eating. Yeah. Okay. Yeah, really interesting. So you've got, um, you've obviously spent a lot of work time working with things like a Elementor beaver builder and they've Gutenberg block editor. What about other integrations? So, for example, one thing that I'm thinking of that might be really important is SEO plugins on, I know that Yoast, um, very popular, do you have integrations with these kind of, um, popular plugins as well?
Amir Helzer: 26:00 Yes, of course. Uh, so for instance, our integration with the Yoast means that WPML knows where Yoast saves, it's meta information. And as you translate these texts, appear together with your regular page texts. Okay. So let's say that you've created a page and you edit the SEO information with Yoast. Now you go to all transition at, at all and you'll magically see your SEO title and description together with your own text translated together. But it also tells you what you're doing. So it's not just a dumb piece of text, you understand that you're translating the SEO text now.
Nathan Wrigley: 26:37 Right. Okay. Well that's good. Are there any other SEO type plugins that you work with apart from Yoast, or is that where you've put all of your energy?
Amir Helzer: 26:45 Oh, I'm not, I don't know but I can check.
Nathan Wrigley: 26:48 Yeah. Well, there was one that was becoming increasingly popular is one called SEO Press that seems to have gone through the roof over the last few months, largely because of a, of a deal that they struck during the black Friday era in, in 2018 but yeah, fair enough. If you don't know, that's fine.
Amir Helzer: 27:08 Yep, compatibility with this in September 11.
Nathan Wrigley: 27:09 Great, great. Okay. The, the next one I suppose is all about actually doing the translations themselves because I know that's, that's probably a big concern. Most people, you know, they might speak to maybe three, but beyond that it's unlikely. Um, is there any, well I know the answer to this, but I want, I would like you to discuss it with us if that's all right. The, the capability to offload the translations so that you don't have to go and find your own people to do it and then cut and paste and what have you. I know that you, you integrate with a bunch of companies which provide services like this. How does that work within the plugin?
Amir Helzer: 27:48 Um, so inside the plugin, it looks very similar to the same process that you use to translate yourself. You'd go to the same transition dashboard and you choose which content you want to translate and to which languages. But when you choose who will translate it and they'll, WPML is today integrated with I think maybe 60 or 70, or a little more, translation services.
Nathan Wrigley: 28:14 Wow. I didn't know that.
Amir Helzer: 28:16 Oh no, no more. Um, and um, you could, this integration means that in order to send work to them and to receive the translations, you don't need to go out of your way. You did to create your account with them because you're paying them for this work. And then from the account that you've created, you get some key or token and you basically connect your transaction account with your WordPress site. So WPML you enter that token and off you go. And then the Optima lets you send, choose and send the content to them. We take care of everything on the way you'd need to pay them for the effort and when they're done translation appeals back in, in WordPress ready to be published.
Nathan Wrigley: 29:04 Wow. So you're literally putting your text link up, their API, their token, whatever. Press a button, wait a bit, pay a bit, and then the text is there. You log in and when they finished it, there it is right inside your dashboard. Ready to go. That's the idea. That's nice. Have you have you any tips on, hmm, you're not going to want to name one service over another. I know, but are there any kind of Gotchas? So for example, if I was in like a super niched out area, I don't know, I'm dealing with um, Cisco routers or something where there's loads of bizarre technical language. Are there any, are there any bits of advice you've got about picking one of those services over another? Does some of them have an area of expertise where others maybe don't?
Amir Helzer: 29:50 Well, so my tip would be, would be to go to our listing page. Yep. Well they're all listed and just use a text search and find what you're looking for. You'd find a, I'm just there now, so I'm looking at a company who's focusing on aviation. Got It. No, I wouldn't recommend this for everyone, but if you are dealing with a vision that's probably a good solution for you. Another one is a expert in the medical transition. So it really depends. We made sure in the descriptions too, we threw out, well we didn't include the general marketing stuff like we're the number one position service and we pride in quality, not, we tried to include a description, texts that allow you to choose what's right for you.
Nathan Wrigley: 30:37 Right. The actual meaningful stuff. Less of the marketing it more of actually what they do. Yeah. Okay. So that's good. You've got a page up there where you've allowed the, you've taken texts from their website, hopefully illustrating where their areas of strength are. Do you know if any of them take SEO incredibly seriously? Because obviously, you know, um, do they provide things like suitable titles back? An SEO does a, there's a whole industry of SEO, right? And, um, you know, people spend absolutely massive amounts of money and energy making things SEO friendly. Do these translation companies, to your knowledge, do that work in their own language as well? So for example, will, my German translation be a faithful translation from English or will it be kind of, okay, we want it to be SEO German as well.
Amir Helzer: 31:24 I think this will happen if you, uh, if you insist that this will happen. So if without any instructions you'll get okay results, but with a little bit of effort from your side, like if you'd explain to them your market, what kind of tone this needs to have. Like for instance, in Spanish you could have everything in completely formal language or in conversational language and it comes out very differently. They have no way of knowing this if you don't specify it. Um, when, um, when you're talking about Seo, I can describe what we did with translators. Okay. Um, so we explained the whole story to them and then, um, we explained what the key phrases for us, um, like a WordPress, multiple languages these terms or the WordPress glossary itself. Like what is a post, what is the theme? Um, and um, we explain to them the context when translators get the context, the life becomes a lot easier. Um, and we, we helped them build a glossary for us and once they've established this glossary, things go very smoothly including good SEO results.
Nathan Wrigley: 32:47 Do you, do you provide the option to it to give them notes along with the translation? So for example, you've pasted in the text and you, you might want to say, or we'd really like to emphasize this bit, but you know, text going over as notes, which isn't to be included in the text or do you need to actually phone them up or email them and tell them they this bit requires such and such?
Amir Helzer: 33:09 Yeah, you can actually add a note per item per post in WordPress. You can do this when you're editing the page or in the transition dashboard before you're sending it to transition. And WPML includes that note when it sends jobs to translation services.
Nathan Wrigley: 33:26 Okay. That's good to know. A couple of edge cases came out in some of the questions that some of our people posted in the WP Builds Facebook group. One of them was about ab testing. Is there any capability either currently or on a roadmap to, to have different types of text, a B tested to see which is more effective?
Amir Helzer: 33:50 Well, it's, I'm more for your workflow question than WPML because um, for that you would create your, you'd start two different pages, each has its own URL and you can create a different translations for them and use this with your ab testing tool. Yeah. Transition sit in their own URLs
Nathan Wrigley: 34:09 Okay. So, um, right. I think that answers that. And then the next one was all about sort of conditional logic. And this, I think this question came from somebody who was using Elementor and they wondered if there's the capability to sort of shut things down and not show particular translations. But it sounds to me like that would be the same answer again to be honest.
Amir Helzer: 34:32 Um, so WPML does provide PHP constant with the current language. Um, I don't know if Elementor uses that, but if you're brave enough and you want, own, people do that a lot. For instance, a lot of people want to display a different icon or different logo, for different languages. It's not a completely different language. Just has a different text embedded on it. Okay. But the logo comes form your theme in PHP. Okay. So they don't have theme options to play with it. It comes directly from the PHP. And in that case, they would use the language constant in WPML by a long if statement and PHP and have a different, a different output depending on the language this people do a lot.
Nathan Wrigley: 35:24 Mm. Um, here is a very specific question. It asks, will you at any point in the near future be changing the flag icons?
Nathan Wrigley: 35:36 Um, that should be a problem because it would mean backward compatibility with a whole lot of sites.
Nathan Wrigley: 35:42 Yeah. I think, I think this person's maybe thinking they would just like them. It says, the question literally reads, uh, please ask if they're, if Amir intends to add new flag icons, the actual ones look slightly dated. You can see the context in that question. Let's move on and let's talk about something which happened recently for WPML at the time of recording a couple of weeks ago, uh, some news came across my radar, um, on the WP Tavern website because you suffered, well security breach the wrong word, you, you had, you had, uh, something happened, which you would not like to happen. Do you want to tell us a little bit about that? Because quite a few of our questions were about that and how it all played out and whether you've got it resolved and whether their data got exposed and so on.
Amir Helzer: 37:39 Um, okay. And they, he or they, I don't know. I use that to get hold of our database. So this answers your next question. Uh, yes. Uh, the attacker got the information that full names and emails of our clients. Um, and of course the content which we have on our site. This is why we rushed very quickly to uh, to, to ask our clients to make sure that if they gave us in the past debug information in our support, they would close these temporary constantly created first we do this anyway, when when we finish handling a support request and someone gave us access to a site, we ask them, we tell them we're, we're done with uh, checking your site. We no longer need the credentials that you created for us. But since, uh, now a third party has this information, what we considered as a private information that people gave to us.
Amir Helzer: 38:47 Now we know that it leaked out. We ran very quickly and we looked for these threads that have private information and we ask people, please make sure that these accounts are disabled. Okay. Now we couldn't delete it from our side because it has no meaning the attacker has the copy of that. So just deleting it from WP.org, that would actually not help. We left it on our phone so that people could see which information they gave us. If we'd go and delete it from our form, it's really weird because an attacker has this, but the person who gave us this information doesn't even know what he gave us. Yes, we don't want to do that. Eventually we deleted it from the form, but only when people confirm that they took care of these accounts. That in my opinion is the biggest piece of damage.
Amir Helzer: 39:38 Um, besides that, um, I was very happy. We were all very happy and fortunate that everyone in our team got together to fix this. So we, we managed to close the, not just the security issue to close a lot of other things, um, between Saturday and Sunday when it happened and, uh, we didn't see anyone who got abused with bill payment for instance, because you know, now we have a subscription system. So an attacker for fun could have triggered, uh, purchases. Okay. These purchasers would have gone to our account and we would have, we funded them because these subscriptions are set up between the client and us. You cannot go into, uh, into the payment processor and change the destination of the payments. This would still be a major had a lot of work, very major headache this, so I don't want to go into everything. But we changed, we immediately changed the kids in the, in the payment processors. Uh, all the keys of course in the city. And that was expected from the beginning, the mailer, the everything and well the end result is that an attacker has the names and emails of our clients.
Nathan Wrigley: 41:02 Um, did you at the beginning when the coverage was coming out, it felt, uh, if I remember rightly, you had a notion that it was an ex employee. Is that still the, the line of inquiry or does it turned out to be unlikely that were the case?
Amir Helzer: 41:19 So now we have enough evidence about this and uh, our next action is we're working with, uh, local, um, local lowyer film I law film in the country where we suspect this came form to understand if we can go to court with this and what we would need to bring to court. I hope, I hope we can, it's a, it's more exciting on TV when it happens. Oh yeah. Within 10 minutes, you sit in and stuff in front of a judge and everything finishes in real life. It's a little slow.
Nathan Wrigley: 41:58 Yes, yes. And probably, you know, lots of heartache. And what have you, just just for my personal point of view, this might seem like a bizarre question, but I hope, I hope you don't feel too bizarre about answering it. How that moment when you realize that this has happened and you know, you've poured your life and soul into this company over many, many years. How did that feel when you knew that this thing had happened and you suddenly, oh, drop everything we've got this thing to deal with?
Amir Helzer: 42:29 Well, honestly, I felt, and I still feel that we should have done more to prevent it, um, because, well, you know, when you're doing business with people, not everyone is always pleased with you. And if you leave it up to them to decide how they hurt you, then you're making a mistake. Yeah.
Nathan Wrigley: 42:49 Yeah. It's a good point. And presumably, um, lessons learned, you know, the hard way in this case, but, um, you've, you've now patched everything and, and probably got something a lot stronger than you would have had had you built this without an intrusion. You know, cause you've, you've really seen what damage can be done. Yeah. Yeah. Well that's great. I mean, and going forwards, um, obviously nobody who's got a WPA, uh, dumped WPML excuse me, accounts needs to worry about their payments or anything.
Amir Helzer: 43:20 Um, if, if anything, one simple tip that I can give 12 one is just please activate two factor authentication on your site.
Nathan Wrigley: 43:28 yes. Like on everything that you can possibly find and then get a Yubikey and get what I do. Something like that as well. Um, yeah. Yeah. Okay. Let's change tack. Let's move away from that miserable subject and go on to just one last question if that's all right. Because what somebody asked in the group about the licensing model for WPML, they, they made the point that the, the plugin itself doesn't appear in the WordPress repo. I don't know if that's true or not. I'm taking it on face value. And do you know the whole GPL licensing thing? Is it, is it not? And is there anything that you want to say about that? If you're happy to talk about licensing.
Amir Helzer: 44:06 So yes, WPML doesn't appear on the WordPress repository, otherwise we wouldn't be able to sell it. When will selling WPML, WPML like every other piece of code people, write ror WordPress goes with GPL license. Okay. Uh, what will selling, uh, the access to downloads and to support. So you get help when you need and you get updates when the available. Okay. Basically you're paying us for the time that we spend working on the product and supporting you. Um, GPL gives you certain freedoms, but it doesn't give you every freedom, for instance, GPL doesn't allow you to infringe someone's trademark. And since WPML is our work, then we've trademarked the elements, which are, uh, which we can trademark like the name, the logo, the application. These are all things that we could trademark like a WordPress has a trademark. You probably know. So you should try to create a domain that says best WordPress news that's not gonna fly. So WPML enjoys the same protection as WordPress itself. Enjoys now what was, has a free distribution at that. We control the distribution of WPML, the access to our downloads. That's it.
Nathan Wrigley: 45:39 That's nice. So thank you for answering that. That's good. And um, let's again change subjects and just for a brief moment to talk about the, the sort of roadmap for the future. Is there any exciting news developments that are coming down the road for WPML?
Amir Helzer: 45:55 Yeah, so this goes more to your listeners who are actually familiar with WPML. I'm not sure if any of this is going to be very exciting for you. Um, the, the next release of WPML is going to have a significant, a significant improvement for the admin strings. Um, these are strings that don't belong to any specific post, but you still want to translate them. For instance, the sites, a tagline is one of those, it's, it's string that you'd want to have different in different languages, but it doesn't belong to a certain post. So that particular is this whole interface fro translating strings that don't belong to post this is getting a complete overhaul. Um, we're doing some improvements to the browser language who direction, what we talked about before, identifying the Basel language. Uh, what's next? Uh, more, more love for WooCommerce. Oh, we have, we, we've had for years compatibility with WooCommerce. WooCommerce is a nice moving target and there's always new stuff to add to it. Most more love for Elementor Pro. Let's see what comes for Elementor Pro. Oh, it's a big list. But again, because Elementor also is a very quickly evolving a product and they're always adding functionality and we want to make sure that you can translate everything.
Nathan Wrigley: 47:25 Do you, um, do you communicate? My, my understanding that Elementor is based in Israel. I'm not sure exactly where, but, and uh, as, as you are, if, do you have a nice relationship with them? Do you kind of hang out together or, you know, organize your stuffing compatibility with their stuff?
Amir Helzer: 47:43 We make sure that, when we have new releases, we test it with them and when they have new releases, they test it with us. Um, in all honesty, I might my hangouts, uh, uh, my social hangouts, are less with a work related stuff, I go to WordCamps and they go to meetups in that. But for fun I try to have a separate life.
Nathan Wrigley: 48:15 That's a good point. Okay. Finally, let's, let's put WPML behind us just for a moment and very, very briefly talk about Toolset, uh, the other side of the business if you like. Um, not the history of it or how it works or anything like that. Just briefly, same question, really anything nice and new happened recently with toolset or happening soon.
Amir Helzer: 48:39 Today we are releasing a brand new version of forms which we called curb, which, uh, includes a very, very nice visual form builder. Maybe after you have a look at this, we can chat again and you tell me what you think.
Nathan Wrigley: 48:55 The videos looked very impressive. I have to say. I was, I watched somebody dragging components around and putting field elements next to each other with the, with the use of a mouse. And I thought that looked really nice.
Amir Helzer: 49:06 Well it actually works. It's really nice. And Toolset team is actually splitting in two directions. We have about half of the team working on a feature requests that have built up over time. Very important things. Uh, smaller things but important, like the ability to create convenient galleries without the jumping through hoops. Um, uh, something that you can use for flexsliders for this impressive sliders, you know, what the thumbnails move left and right. Yup. Finally we want to have a calendar display for views. Uh, it's a little more work than we hoped for, but uh, we'll, we'll get to that. Um, this sort of assaulted important features that we haven't gotten around to and we finally doing them. So that's one direction. The other half of the team is on Gutenberg actually. Um, our objective is that when you create content first, I don't know if we should preview this site. No,
Nathan Wrigley: 50:24 maybe. Yeah,
Amir Helzer: 50:26 maybe. Yeah. Maybe when you have some more time we can show it that,
Nathan Wrigley: 50:31 oh, there's something about Gutenberg though. This is as much as we know. Okay, good. So that, that'll do, oh, that's really nice. I have to say, I watched the videos about the forms. Um, and that really, really, really looks lovely. Well done. And um, and oddly you, one of the questions was about a calendar. It was what, when is, when is the calendar thing coming? So that's nice too. Ah, exciting times. Exciting Times. Thank you, Amir. I think we'll, um, we'll call it a day there. Thanks for coming on and asking, answering, sorry. Our questions about WPML before we go, you've got as much time as you'd like to, to promote, say what your email addresses, your Twitter handle, your company websites and so on and so forth. So I'll hand it over to you.
Amir Helzer: 51:12 Well, thank you. So I appreciate anyone who's taking with us up until now. Um, our website is wpml.org and it's really easy to find a fish if you just go to Google and enter WPMLor Toolset you'll find the correct website. Yep. On Twitter we owe WPML. Uh, and we have a nice Facebook page as well. So if you go to Facebook and click just search WPML / Toolset you'll find us.
Nathan Wrigley: 51:39 So there we go. If you have any need, especially if you live in Canada or Belgium or Switzerland, uh, get in touch about Belgium. Um, any needs to translate things into multiple languages. WPML a solid choice with lots and lots of years of development work behind it. Thanks so much for coming on and talking to us about it.
Amir Helzer: 51:56 Thank you so much.
Nathan Wrigley: 51:58 I hope you enjoy today's WP Builds podcasts. Thanks for staying with us. Certainly interesting hearing from Amir all about what the plugin is capable of, what it can do, how the workflow works, and also about the little breach, the data breach towards the end and the approach that they're taking to mitigate that for the future.
Nathan Wrigley: 52:16 The WP Builds podcast was brought to you today by Wpn op. One in four of us will be directly affected by mental health related illness. Wp and ops supports and promotes positive mental health within the WordPress community. This is achieved through mentorship, events, training, and counselling. Please help enable WP and UP by visiting WP and UP.org forward slash give together we can #pressforward.
Nathan Wrigley: 52:47 As I said earlier. Thanks for joining us today. Really appreciate it. I'd be very happy for you to join us next Monday when we'll be bringing out our weekly news and come back next Thursday to hear the next episode of the WP Builds podcast. You are more than welcome to join us for each and everything that we do right now. I'm going to fade in some cheesy music and say bye bye for now.