Naar hoofdcontent

Substitutions

Met substitution rules kunt u vertalingen corrigeren en inhoud van pagina's, javascript bestanden en meer aanpassen. Het bevat dezelfde functionaliteit als zoeken & vervangen, maar bevat ook functies waarmee u meer complexe regels kunt toepassen.

Clone editor

Gebruik de editor wanneer dit mogelijk is. De editor is makkelijker in gebruik en biedt directe visuele feedback. Vooral voor het bewerken van tekstfragmenten is dit vaak de makkelijkste oplossing.

Substitutions toevoegen:

Om substitutions aan uw clone toe te voegen opent u uw clone in het control panel en klikt u op Substitution rules in het zijmenu. U ziet dan een tabel waarin u uw substitution rules kunt beheren. De tabel bestaat uit twee tekstvelden, drie checkboxes voor opties, een knop om een regel te verwijderen of toe te voegen en met de pijltjes kunt u de volgorde van regels veranderen.

Substitutions

Verwerkingstijd

Het duurt ongeveer 30 tot 60 seconden om wijzigingen aan substitutions en substitution exclusions door te voeren. Als een regel na twee minuten nog niet lijkt te werken, kunt u het beste controleren of de regel helemaal juist is.

Hoe substitutions werken

Om de substitutions goed te kunnen gebruiken is het belangrijk om te begrijpen hoe deze werken. Het belangrijkste om te weten is dat alle regels tegelijkertijd worden toegepast. Dit klinkt wellicht verwarrend, daarom leggen we u dit aan de hand van een animatie graag uit. Tijdens het evaluëren van regels worden de volgende regels aangehouden om te kiezen tussen twee conflicterende regels:

  • Als regel a meer tekens heeft gematcht dan regel b, dan gaat regel a boven regel b.
  • Wanneer twee regels hetzelfde aantal tekens gematcht hebben wint de regel die hoger in de tabel staat.

Hieronder is een animatie te zijn waarin vijf (overlappende) regels worden toegepast op een stuk broncode. In deze animatie worden de woorden hit en miss gebruikt om aan te geven of een regel een karakter wel of niet kan matchen. Rechts van de regel is te zien hoeveel tekens een regel al gematcht heeft.

Substitution match animatie

In de animatie is te zien dat er eerst een conflict ontstaat tussen de regels boekenkast en boek. In dit geval hebben beide regels 4 tekens gematcht en wordt daarom gekeken naar de volgorde. Omdat boekenkast boven boek staat wordt de volledige match van boek verworpen en wordt er niks met deze regel gedaan. Even later onstaat er een conflict tussen de regels kast en boekenkast. Beide regels hebben een volledige match. Omdat in dit geval boekenkast meer tekens heeft gematcht dan boek wint deze regel en zal de regel boekenkast toegepast worden. Nadat een regel is toegepast, zullen alle andere regels gereset worden en moeten ze allemaal opnieuw beginnen.

Het 'Opslaan' gedrag

Het opslaan van de substitution rules werkt vanwege technische redenen op een aparte manier. Als je een nieuwe substitution rule toevoegt en vervolgens opslaat, zullen eerst alle oude substitution rules verwijderd worden, en opnieuw worden toegevoegd. Dus stel dat je 3 substitution rules hebt, en je voegt er 2 toe en slaat vervolgens op, dan zullen er dus eerst 3 verwijderd worden, en vervolgens 5 nieuwe worden toegevoegd. Dit is voornamelijk belangrijk om te weten bij de volgende valkuil.

Opties

Bij elke substitution heeft u drie opties die u aan of uit kunt zetten. Hieronder leggen we uit wat elke optie doet. Let erop dat Regular expression en Single word niet tegelijkertijd aan kunnen staan.

Case insensitive

Met de optie Case insensitive maakt u de substitution hoofdletter ongevoelig. Let erop dat bij de replacement hoofdlettergebruik niet zal worden overgenomen. Onderstaand voorbeeld vervangt zowel sinaasappel als SinaAsAPPel door appelsien:

Original

Replacement

Options

Regular expression

Lees eerst de valkuilen

Voordat je aan de slag gaat met de regular expression is het slim om eerst op dit stuk te lezen.

Met de optie regular expression wordt de regel beschouwd als een regular expression. U kunt deze optie gebruiken om meer complexe substitutions te maken die bijvoorbeeld gegevens uit het origineel moeten overnemen in de vervanging. Regular expressions bieden binnen Clonable de mogelijkheid om match groepen te gebruiken in de replacement (bijv. $1, $2, enz.). Voor meer informatie over regular expressions binnen Clonable kunt u dit artikel lezen. Deze optie kan niet worden gebruikt in combinatie met Single word.

Single word

De optie Single word gebruikt u wanneer u een substitution wilt maken voor een los woord en wilt voorkomen dat dit woord ook wordt vervangen als het deel is van een groter woord of bijvoorbeeld een url. Wanneer het origineel van uw substition een spatie bevat (en dus uit meerdere woorden bestaat) is deze optie vaak zinloos. Ook wanneer uw woord geen deel is van een ander woord op uw clone en niet voorkomt in non-tekst elementen zoals url's of script kunt u deze optie uitlaten. Deze optie kan niet worden gebruikt in combinatie met Regular expression.

Substitutions met HTML

Wanneer u een substitution wilt maken voor een stuk tekst met daarin verschillende opmaak (bijvoorbeeld een dikgedrukt woord), kunt u niet zomaar de tekst gebruiken als original. Tekst met wisselende opmaak bevat namelijk HTML tags in de broncode die daarom ook onderdeel moet zijn van de substitution rule. Bekijk dit artikel als u meer wilt weten over hoe u moet omgaan met HTML in substitutions.

Onzichtbare html tags

Ook wanneer u geen duidelijk verschil in opmaak ziet, kan het zijn dat zich HTML tags bevinden in de tekst die u wilt vervangen. Ook kunnen sommige tekens gecodeerd zijn waardoor de broncode afwijkt van wat u ziet. In plaats van een spatie kan bijvoorbeeld   gebruikt worden en in plaats van & kan er & gebruikt worden. Controleer daarom altijd de broncode als een regel niet lijkt te werken.

Valkuilen

Tijdens het maken van substitutions kunt u een aantal valkuilen tegenkomen waardoor uw regels niet werken. Hieronder hebben wij de meest voorkomende op een rijtje gezet.

Regels met domeinnamen in het origineel

Wanneer het origineel van uw regel de domeinnaam van uw clone bevat, is het belangrijk deze te vervangen door de domeinnaam van de originele site. Dit is nodig omdat het vervangen van de domeinnaam ook een substitution rule is die wordt toegepast met uw eigen regels. Wanneer uw regel wordt uitgevoerd, staat er dus nog steeds de originele domeinnaam.

Goed

Original

Replacement

Options

Niet goed

Original

Replacement

Options

Witruimte in substitutions

Wanneer u substitutions maakt moet u ook zorgen dat de witruimte exact overeenkomt. Dit is vooral van belang bij substitutions met meerdere regels. Zorg daarom dat u altijd het origineel via de view-source optie van uw browser gebruikt en niet via wat u ziet of via de developer tools.

Gecodeerde tekens

Het komt vaak voor dat speciale tekens zoals & of > HTML-gecodeerd worden in de broncode als & en >. U moet dan voor uw substitution rule in het origineel ook de gecodeerde variant gebruiken om te zorgen dat de regel werkt. U kunt in dit artikel meer lezen over HTML in uw substitution rules.

Errors in de substitution rules

Wanneer je aan de slag gaat met regular expressions in je substitution rules, moet je rekening houden met validatie fouten die kunnen optreden bij het opslaan van de substitution rules. Je moet de substitution rules vergelijken met een lampen in serie geschakeld zijn. Wanneer er een substitution rule faalt, zullen alle opvolgende regels ook niet worden opgeslagen. Dit kan er toe leiden dat er een aantal substitution rules worden verwijderd.