ReReplacer

Advanced search and replace for Joomla!

  • Last updated: 24 Jul 2019
  • Version: 8.7.2
  • Types: Component System plugin
  • Joomla rating: 100%

Tutorial for ReReplacer

There is a Free and a Pro version of ReReplacer.
The parts in this tutorial that only concern the Pro version will be marked with: Pro only

Introduction

ReReplacer is a Joomla! component (combined with a system plugin) that enables you to search and replace anything you want in your Joomla website on-the-fly.

ReReplacer can work on the entire output of your site, so you can do replacements in any piece of HTML, including things like meta tags. You can search for something and replace it with something else, or you can simply remove it (by replacing it with nothing).

With ReReplacer, the replacements are done on-the-fly, leaving the original text or html unchanged. Some ideas and examples you can use ReReplacer for:

  • Create your own custom plugin-style tags (turn [mytag]some text[/mytag] into some text).
  • Tweak the output of Joomla! without changing the core joomla or extension files.
  • Filter bad words on your site.
  • Temporarily hide text from your website, without actually removing it.
  • Remove redundant whitespace from your code, making your website load faster.
  • Use abbreviations in your content and replace them with the full text (J! becomes Joomla!, COMP becomes My Very Long Company Name®).
  • Quickly place whole blocks of text by only typing one word. For instance, you can use [stats] and replace it with a piece of Google Statistics code. Or [footer] to put a fixed bit of text under articles. You can then change the replacement in one place (in ReReplacer) and your whole website is updated!
  • etc...

You also have the ability to use the powerful Regular Expressions to search and replace. This opens up endless possibilities. You can do virtually everything with ReReplacer!

Setting up a Replacement

Once ReReplacer is installed, you will be able to access it via the Regular Labs - ReReplacer menu link under Components. This brings you to the component view, which lists all the replacements you created.

To set up a replacement, you simply create a new item.

All you need for a ReReplacer item to work is a Title (for your personal reference) and something to Search for. You can make it Replace the searched text with something else, or simply remove it (by replacing it with nothing).

Optionally you can tweak how and where the replacement is done with a multitude of extra settings.

Simple Replacement

We'll start with a very simple word replacement. Let's say you want to replace all occurrences of 'Cats' with 'Dogs'.

  1. So, the first step is to create a new item in the ReReplacer component.
  2. Give it a Title, like: "Replace Cats with Dogs".
  3. Then in the Search field place: Cats
  4. And in the Replace field place: Dogs
  5. Save the item

And that's it! You just created your first replacement.

To test this replacement, create an article and place the word "Cats" in it a couple of times. Then view the article in your frontend website. You should see that all occurrences of 'Cats' have been replaced with 'Dogs'.

Multiple Replacements

Let's say you don't only want to replace 'Cats' with 'Dogs', but you also want to replace 'Kittens'.

You can do multiple searches into a single ReReplacer item, thanks to the "Treat as List" setting.

With this feature switched on, you will be able to enter a list of multiple words to search for, separated with a comma. For example: Cats,Kittens.

All the words in the search list will then get replaced by the replace string.

But what if you want to replace 'Cats' with 'Dogs', but replace 'Kittens' with 'Puppies'? Then you simply make a list in the replace field too!

So search for:

Cats,Kittens

And replace with:

Dogs,Puppies

The various words in the "Search" field will be replaced with their respective word in the "Replace" field.

Notes:

  • Do not place spaces after the comma in a list search, unless you want to replace the space before the word too.
  • When the "Treat as List" setting is enabled, you must use [[comma]] to match actual commas.
  • When the "Treat as List" setting is not enabled, commas will be interpreted and matched as normal commas.

Word Search & Case Sensitivity

With above examples, you may have noticed, not only does the word 'Cats' get replaced, but also 'cats' (lowecase), as well as the part 'cats' inside other words. So 'Copycats' becomes 'CopyDogs'.

You might want that and then it's fine. But if not, you have a couple of settings to make the search smarter.

Firstly you can switch on the "Word Search" setting. Then the search will only match the word 'Cats' as a standalone word (it won't match cases where the string is preceded or followed by a letter).

But it will still match 'cats' (lowercase) and 'CATS' (uppercase) as words.

So you might also want to make it Case Sensitive. If you switch on that setting, the search will only match 'Cats', and it won't match 'cats' or 'CATS'.

Handle with care!

Because you can replace/remove all kinds of things, you can potentially break your site. It is not wise to replace words like 'html', 'body' or (parts of) words that are used in inline scripts.

However, the cool thing is: all replacements are not permanent. They are done on-the-fly. So when you turn off the plugin or remove the replacement, your website is back to the original state.

Also, there are many useful features and settings enabling you to search only in certain areas (for example without touching fragile areas like html tags and outside the html body), as well as assigning replacements to certain conditions (for example only specific user groups, or certain seasons, or specific extensions).

Search Areas

Under the Search Areas tab you will find a number of settings to control in what areas of the website the replacement should be done.

The main setting under this tab is the Enable in area setting. If you don't know what to choose, leaving this to Body (not in head) is usually fine.

  • Content (Articles & Categories)
    Only in articles from the article manager. So not in forum articles, for instance. And also not in articles shown through modules.
  • Components
    In the main area of your site. So in all components, but not in modules and other elements outside the main area.
  • Head (not in body)
    Only in the head section of the html (the top part containing the title and other meta tags).
  • Body (not in head)
    In the whole site except the head of the html.
  • Everywhere
    In the whole site, so also in the head of the html.

There are also additional features in the Search Areas settings, such as the ability to enable (or disable) search in feeds, edit form, in the Administrator panel, in html tags, and only between certain text.

With the Pro version of ReReplacer, you can also use the Publishing Assignments to assign replacements based on a multitude of possible conditions.

Process Explanation

Some more in-depth information about the underlying process. You can skip this part if it is too complex for you.

The choice you make in the Search Area, not only determines in what area the replacement is done, but also at what stage in the rendering process of the page the replacement is done.

During the rendering of the page, ReReplacer gets triggered 3 times.

  • Content Prepare
    This is the stage where the articles are prepared for further handling.
    Replacements using area Articles (and Categories) will be run at this stage.
  • After Dispatch
    At this stage the main content for the page has been generated. This concerns the 'component' area. So this does not include any modules yet.
    Replacements using area Content (not in modules) will be run at this stage.
    PS: After this stage it is no longer possible to add scripts/styles to the page through php commands.
  • After Render
    The is the last stage in the process, before the final html gets passed to the browser. So this includes all the html, including the 'componet' area, all modules and the 'head' section of the html (which contains the site title, meta tags and possible script and style tags). All other Replacements will be run at this stage. So Body (not in head), Head (not in body) and Everywhere.

Regular Expressions

ReReplacer supports the use of powerful Regular Expressions to search and replace. This opens up endless possibilities and makes it possible and easy to make your own custom Plugin-Style Tags.

This means you can place a simple little text like {mytag} in your content that (usually dynamically) gets replaced with something more complex.

Let's say you want to create a dynamic plugin-style tag to place images of animals quickly and easily. So {animal cat} would place your cat.jpg image, and {animal dog} wouldl place dog.jpg, etc.

After switching on the "Regular Expressions" setting, the search field should contain:

\{animal (.*?)\}

And the replace field something like:

<img src="/images/animals/\1.jpg" alt="\1" />

Explanation

Let's explain this Regular Expressions search:

In regular expressions there are a lot of special characters that have special meanings. To search for the actual character, you need to 'escape' it with a backward slash (\).
The { and } have special meanings in regular expressions, so to match the actual { and } you need to escape \{ and \}.

The (.*?) has a bit of magic going on. This regex satement is used very often. It pretty much means: grab all the text until you find the character after this statement, in our case '} '.
The ( and ) make sure that the content matched by the statement is stored, so you can later use it in the replacement.

So then we come to the replacement. That is pretty much all standard html, except the \1 part. That refers to the first (and in our case, only) captured match in the search: (.*?). That contains the value 'cats' or 'dog' or whatever you placed inside the {animal} tag in your article.

More on Regular Expressions

For help and documentation on regular expressions, ReReplacer comes with a Regular Expressions Cheat Sheet.

For more info on Regular Expressions: http://www.regular-expressions.info/reference.html
For testing them: http://gskinner.com/RegExr, http://regexpal.com, http://www.phpliveregex.com

More Plugin-Style Tags Examples

You can find more examples of creating and using custom plugin-style tags in the ReReplacer Examples Page.

Dynamic Tags

ReReplacer comes with several preset codes and dynamic tags that you can use in different situations. Here is a complete overview for all of them.

Input SyntaxOutput ExampleDescriptionSearchReplace
[[comma]] , Use instead of a comma when 'Treat as List' is selected. Use normal commas to create lists. Yes Yes
[[space]] Use instead of leading and trailing spaces (otherwise they will get stripped upon saving). Yes Yes
[[user:id]] 465 The ID number of the current logged-in user. * No Yes
[[user:username]] peter The login name of the current logged-in user. * No Yes
[[user:name]] Peter van Westen The name of the current logged-in user. * No Yes
[[user:misc]]

I'll sell you good copper, which is cheaper... well, here it is.

Any other available data field from the current logged-in user or the connected contact. * No Yes
[[article:id]] 123 The ID number of the current article. Pro only ** No Yes
[[article:title]] My Article The title of the current article. Pro only ** No Yes
[[article:alias]] my-article Any other available data field from the current article. Pro only ** No Yes
[[date:%A, %d %B %Y]]
[[date:%Y-%m-%d]]
Wednesday, 21 August 2019
2019-08-21
Date using php strftime() format. No Yes
[[random:0-100]]
[[random:1000-9999]]
83
1428
This places a random number within the given range. No Yes
[[counter]] 1 This places the number of the occurrence. If your search is found, say, 4 times, the count will show respectively 1 to 4. No Yes
[[escape]]\1[[/escape]] "It\'s a string!" Use with 'Regular Expressions' to escape dynamic values (add slashes to quotes). No Yes (regex)
[[uppercase]]\1[[/uppercase]] "IT'S A STRING!" Use with 'Regular Expressions' to convert text within tags to uppercase. No Yes (regex)
[[lowercase]]\1[[/lowercase]] "it's a string!" Use with 'Regular Expressions' to convert text within tags to lowercase. No Yes (regex)

* The user data tags place data from the logged in user. If the visitor is not logged in, the tag will be removed.
** The article data tags are only available when the Search Area is set to "Content (Articles & Categories)".

Replace with PHP Pro only

The Pro version of ReReplacer also gives you the ability to replace with dynamic PHP code. By enabling the "Replace with PHP" setting, you can replace simple words or pieces of html with complete php code snippets.

Say you want to place a tag containing either a userid, username or name, and replace it with a table containing some details of the user, like name, email address and registration date.

So for example you could use these tags: {usertable 123}, {usertable peter} or {usertable Peter van Westen}.

Like explained in the Regular Expression example, you can create the dynamic search string like:

\{usertable (.*?)\}

In the replace field you can place the required php code inside <?php an ?> tags:

<?php
$query = $db->getQuery(true)
->select('name, email, registerDate') ->from('#__users') ->where('id = ' . $db->q('\1') . ' OR username = ' . $db->q('\1') . ' OR name = ' . $db->q('\1')); $db->setQuery($query); $user = $db->loadObject(); if ($user) { echo ' <table> <tr> <td>Name:</td> <td>' . $user->name . '</td> </tr> <tr> <td>Email:</td> <td>' . $user->email . '</td> </tr> <tr> <td>Registered on:</td> <td>' . $user->registerDate . '</td> </tr> </table> '; } ?>

For long blocks of php/html you can also choose to place the code in an external file and simply include it.

So in the replace field you can place:

<?php
$myvar = '\1';
include JPATH_SITE . '/myfiles/file.php';
?>

With the above code, you can use the variable $myvar in the external file. The variable will contain whatever you placed inside the {usertable} tag in your article. Of course, you can name the variable however you want.

Use XML File Pro only

The Pro version allows you to use an XML File instead of the Search/Replace fields when setting up a replacement.

With an XML file, you can define multiple replacements / items within just one file.This makes it very easy to create and manage bulk replacements.

The settings specified in the ReReplacer item that uses an XML file will be used for all the replacements / items contained in the file. Or, you can also overrule the settings per each individual replacement in the XML file.

This makes it possible to even set up multiple replacements inside each of the replacements contained in the XML file, by using the "Treat as List" setting.

To know which syntax is needed to put together this XML File and, you can find an example XML file in the ReReplacer Examples Page, or in the ReReplacer admin component folder.

Item Settings

ReReplacer is packed with options, giving you control over how it works and behaves.

Here is the full list of the ReReplacer item settings you can find when creating and setting up a replacement.

Details

Title Give the item a name.
Status You can use this to (temporarily) disable this item.
Description Give the item a short description telling you what it actually does. Everything following '---' will not be displayed in the list view.
Category Select or create a category to be displayed.
Search Normal search: A comma separated list of strings or a single search. Keep in mind that spaces are matches too. So don't place spaces after the commas when making a list (unless you want to match words with a leading space).

Regular Expression search: You can use all regular expression syntaxes known by php.
Replace Normal search: A comma separated list of strings. If no list is given, all searches will be replaced with this.
Regular Expression search: You can use the numbered back references (like: \1, \2).

Leave empty to remove the search(es).
Use an XML File Select to use an xml file instead of the search/replace fields. With an xml file you can define multiple searches within one file.
Regular Expressions Select to treat the searches and replaces as regular expressions.
Use 'newline' modifier When Regular Expressions is set to 'Yes':
When this modifier is used, a dot meta character (.) in the pattern matches all characters including newlines. Without it, newlines are excluded.
Treat as List If selected, the search and replace strings will be treated as lists. Use comma's to separate the different list items. You must use [[comma]] to match actual comma's.
If not selected, comma's will be interpreted as normal comma's and the search and replace strings will not be treated as list.
Word Search Only handle whole words. It is considered a whole word if it is not preceded or followed by a letter.
So 'foo' is not found in 'foobar' or 'foot', but is found in 'foo3' and 'foo-bar'.
Case sensitive If selected, the searches will be case sensitive. So 'word' will not match 'WORD' or 'Word'.
Thorough If selected, the search will also replace new matches created by the replacement.
Do not use this if your replacement always creates a new match. If you do anyway, ReReplacer will only do the replacement for that match 100 times and then move on to the next match.
Strip Wrapping Paragraphs Select to always remove paragraph tags directly wrapping the search string.
Replace with PHP Select to be able to use PHP code in the replacement. You do still need to surround your PHP code with the PHP tags.

Search Areas

Enable in area

Select where to do the searches.

Content (Articles & Categories)
: Only in articles from the article manager. So not in forum articles, for instance. And also not in articles shown through modules.
Components: In the main area of your site. So in all components, but not in modules and other elements outside the main area.
Head (not in body): Only in the head section of the html (the top part containing the title and other meta tags).
Body (not in head): In the whole site except the head of the html.
Everywhere: In the whole site, so also in the head of the html.

Enable in category If enabled, the replacements will also be done in the description of the category
Enable in title If enabled, the replacements will also be done in the article titles.
Enable in author If enabled, the replacements will also be done in the author name field.
Enable in feeds If enabled, the replacements will also be done in the website's feeds.
Enable in Admin If enabled, the replacements will also be done in the Administrator.
Be careful! Only activate this if you really need to. If your search/replace has errors, it could prevent you from entering your administrator!
Enable in edit forms If enabled, the replacements will also be done in edit forms on the frontend.
Only between (start/end) The search will only take place between the given (html) code. This only works if both the start and end field are entered.
The search will be done within the smallest possible part between the start and end codes.
Example:
If you replace 'x' by 'y' between '123' and '456':
123 xxx 123 xxx 456 xxx 456
will be replaced by:
123 xxx 123 yyy 456 xxx 456
(You cannot use regular expressions in these fields.)
Enable in HTML tags If enabled, the replacements will also be done within HTML tags. You can also choose to do the replacements only within tags. This regards the actual tags <...>, not what is between a open and close tag.
Limit to tag selection If enabled, the replacements will only be done within selected tags and tag parameters. Otherwise searches will be done within all tags.
Tag selection A list of permitted tags and parameters to do the searches in. This regards the actual tags <...>, not what is between a open and close tag.
Use an asterisk to permit all tags/parameters. The syntax of this list is like this:
tag_name_1[parameter_name_1, parameter_name_2] tag_name_2[parameter_name_1, parameter_name_2]

Example (permits search in the values of the 'alt' and 'title' of all tags, permits search in the whole 'a' tag):
*[alt,title] a[*]

Publishing Assignments Pro only

Assignment Types

The Publishing Assignments tab in the item edit view contains an enourmous amount of assignment types and options.

By using the assignment options, you can determine where or when a replacement is done. You can assign replacements to, or exclude them from, virtually anything.

This way you can - for example - create replacements only for certain user groups. Or only available during certain seasons. Or only within certain extensions (components).

Else

The last option under the assignment types is an Else field. You can optionally tell ReReplacer to replace your search with something else in case the assignments are not matched.

For example, you can replace [WELCOME] with a specific welcome text for all your registered users, and with some other text for non-registered users (guests).
Or replace {price} with $10 in the winter and $12 for the other seasons.

You can also select to Do Nothing to make it remove the searched content in case the assignments do not match.

Matching Method

You can use and combine any of the assignments. You don't have to just use one.

To control how multiple assignments are applied, there is Matching Method option. This determines whether all or any assignments need be matched:

  • ALL: Will be published if ALL of below assignments are matched at the same time.
  • ANY: Will be published if ANY (one or more) of below assignments are matched at any time.

Assignment groups where "Ignore" is selected will be ignored.

Note: When setting any or more assignments to Exclude, the Matching Method should be set to ALL. Otherwise, using ANY would result in one Exclude conditon to always match and the replacement to show everywhere else.

Show Assignments

You can select whether to show the full list of available assignments, or only the selected assignments that are currently used. You can use this to get a clean overview of the active assignments.

When set to Selected, all not-selected assignment types will be hidden from view.

Assignment Types

Each assignment type has three possible states/options.

  • Ignore (default)
  • Include
  • Exclude

By default all assignments are ignored, meaning the replacement is not limited by assignments.
To use an assignment, you set the option to Include or Exclude depending on the desired effect.
If you set an assignment to Exclude, the replacement is assigned to all pages/circumstances that do not match your selection.

Below you find all the available assignments with the available settings for it.

Menu Items

In addition to the core Menu Items selection, it's possible to automatically include or exclude all current and future menu items placed under a parent menu item.

Selection Select the menu items to assign to.
Also on child items Also assign to child items of the selected items?
Include no Itemid Also assign when no menu Itemid is set in URL?

Home Page

Unlike selecting the home page (default) item via the Menu Items, this will only match the real home page, not any URL that has the same Itemid as the home menu item.

This might not work for all 3rd party SEF extensions.

Date & Time

The date and time assignments use the date/time of your servers, not the ones of the visitors system.

The date range can be set to be recurring every year in the same time period.

Date
Start Publishing Enter the date to start publishing
Finish Publishing Enter the date to end publishing
Recurring Select to apply date range every year. (So the year in the selection will be ignored)
Seasons
Selection Select seasons to assign to.

Options: Winter, Spring, Summer, Fall / Autumn
Hemisphere Select the hemisphere your website is located in

Options: Northern, Southern, Australia
Months
Selection Select months to assign to.

Options: January, February, March, April, May, June, July, August, September, October, November, December
Days of the week
Selection Select days of the week to assign to.

Options: Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday
Time
Start Publishing Enter the time to start publishing.
Format: 23:59
Finish Publishing Enter the time to end publishing.
Format: 23:59

Languages

The Languages assignment differes from the core in that it allows a selection of multiple languages.

Selection Select the languages to assign to.

Joomla! Content

This assignment is based on what Joomla content page is displayed, including Page Types, Categories and specific Articles.

Page types
Selection Select on what page types the assignment should be active.

Options: Archived Articles, Single Article, List All Categories, Category Blog, Category List, Featured Articles, Create Article

Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Articles, Others

Articles
Selection Select the articles to assign to.
Content Keywords Enter the keywords found in the content to assign to. Use commas to separate the keywords.
Meta Keywords Enter the keywords found in the meta keywords to assign to. Use commas to separate the keywords.
Authors Select the auhors to assign to.

Tags

Selection Enter the tags to assign to. Use commas to separate the tags.
Match all Select to only let the assignment pass if all of the selected items are matched.
Also on child items Also assign to child items of the selected items?

User Group Levels

Selection Select the user groups to assign to.

Users Pro only

Selection Select the users to assign to.

Components

Selection Select the components to assign to.

Templates

Selection Select the templates to assign to.

URL

The URL assignments allows control over specific pages or groups of pages, with support for Regular Expressions.

URL matches Enter (part of) the URLs to match.
Use a new line for each different match.
Use Regular Expressions Select to treat the value as regular expressions.

URL parts will be matched using regular expressions. So make sure the string uses valid regex syntax.

Devices

Selection Select the devices to assign to. Keep in mind that device detection is not always 100% accurate. Users can setup their device to mimic other devices.

Options: Desktop, Tablet, Mobile

Operating Systems

Selection Select the operating systems to assign to. Keep in mind that operating system detection is not always 100% accurate. Users can setup their browser to mimic other operating systems.

Browsers

Browsers Select the browsers to assign to. Keep in mind that browser detection is not always 100% accurate. Users can setup their browser to mimic other browsers
Mobile Browsers Select the browsers to assign to. Keep in mind that browser detection is not always 100% accurate. Users can setup their browser to mimic other browsers

IP Addresses Pro only

IP Addresses / Ranges A comma and/or enter seperated list of IP addresses and IP ranges. For instance:
127.0.0.1
128.0-128.1
129

Geolocating Pro only

Geolocating is not always 100% accurate. The geolocation is based on the IP address of the visitor. Not all IP addresses are fixed or known.
To be able to use this assignment, you need to install the Regular Labs GeoIP library.

Continents Select the continents to assign to.
Countries Select the countries to assign to.
Regions / States Select the regions / states to assign to.
Postal Codes A comma separated list of postal codes (12345) or postal code ranges (12300-12500).
This can only be used for a limited number of countries and IP addresses.

3rd party Content Pro only

EasyBlog
Page Types
Selection Select on what page types the assignment should be active.

Options: Archive Layout, Bloggers Layout (All authors), Categories Layout (All categories), Overview Layout (Dashboard), Single Blog Entry Layout, Featured Blogs Layout, Frontpage Blog Layout, Login layout, My Blog Layout, Subscriptions Layout, Tags Layout, Team Blog Layout
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Items
Tags
Selection Enter the tags to assign to. Use commas to separate the tags.
Page types Select on what page types the assignment should be active.

Options: Tags, Items
Items
Selection Select the items to assign to.
Authors Select the auhors to assign to.
FLEXIContent

For category & article (item) assignments, see the above Joomla! Content section.

Page types
Selection Select on what page types the assignment should be active.

Options: Author, Category, My Items, Favourites, Directory, Single item., Search, Tag
Tags
Selection Enter the tags to assign to. Use commas to separate the tags.
Page types Select on what page types the assignment should be active.

Options: Tags, Items
Types
Selection Select the types to assign to.
Form2Content Lite

For category & article (item) assignments, see the above Joomla! Content section.

Types Select the types to assign to.
K2
Page types
Selection Select on what page types the assignment should be active.

Options: Item, Item edit form, Categories, Tag, User page (blog), Latest items from (one or more) users or categories
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Items
Tags
Selection Enter the tags to assign to. Use commas to separate the tags.
Page types Select on what page types the assignment should be active.

Options: Tags, Items
Items
Selection Select the items to assign to.
Content Keywords Enter the keywords found in the content to assign to. Use commas to separate the keywords.
Meta Keywords Enter the keywords found in the meta keywords to assign to. Use commas to separate the keywords.
Authors Select the auhors to assign to.
ZOO
Page types
Selection Select on what page types the assignment should be active.

Options: Category, ITEM, Frontpage, My Submissions, Submission
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Items
Items
Selection Select the items to assign to.
Authors Select the auhors to assign to.
HikaShop
Page types
Selection Select on what page types the assignment should be active.

Options: User addresses, Categories listing, Featured Articles, Create Article, Contact page, Products listing, Product page, User control panel, Registration form
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.
MijoShop
Page types
Selection Select on what page types the assignment should be active.

Options: Account, Admin Panel, Affiliates, Bestsellers, Shopping Cart, Checkout, Compare, Contact, Downloads, Home, Latest Products, Login, Manufacturers, Newsletter, Orders, Popular Products, Registration, Returns, Search, Sitemap, Specials, Voucher, Wishlist
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.
RedShop
Page types
Selection Select on what page types the assignment should be active.

Options: Account, My Wishlist, Cart, Catalogue, Sample, All Products From a Category, Categories, Category Detailed, Checkout, Gift Cards List, Login, Logout, Portal Layout For Shopper Group, Portal Detail Layout For Shopper Group, Manufacturers, Manufacturer Details, Products From Selected Manufacturer, Newsletter Subscription, Orders, Orders Tracker, Reset Password, Set Password, Token, Product, Product Download, Product Rating, Quotation, Registration, Product Search, Newest Products, Products On Sale, redFILTER, My Wishlist, All Wish Lists
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.
VirtueMart
Page types
Selection Select on what page types the assignment should be active.

Options: Shopping Cart, VirtueMart Categories Layout, Category Layout, Manufacturer Default Layout, Manufacturer Details Layout, List Orders, Product Details Layout, Account Maintenance, User Edit Address, Displays vendor contact, Displays vendors, Displays vendor details, View vendor TOS, Front page
Categories
Selection Select the categories to assign to.
Also on child items Also assign to child items of the selected items?
Page types Select on what page types the assignment should be active.

Options: Categories, Products
Products
Selection Select the items to assign to.

Custom PHP Pro only

This gives you the opportunity to assign to just about anything you can think of. You just need to know what PHP code you should use.

With PHP you can call on all data/information available in the variables, url, database, etc. And then do your checks on this data. You can tell the control the display by ending the PHP code with a return true or false based on your checks.

For examples and ready-to-use PHP scripts, check out the PHP Assignment Guide.

Custom PHP Enter a piece of PHP code to evaluate. The code must return the value true or false.

For instance:
return ( $user->name == 'Peter van Westen' );

Configuration Settings

From the ReReplacer component view, in the toolbar on the right, you will see the "Options" button.

When you click on that, you will be directed to the Global Configuration options for ReReplacer.

Here is an overview of the global configuration settings. All descriptions are available in the tooltips of the options.

Options

Show search and replace fields Select whether to show the search and replace fields in the list by default.
Contact Database Table The contact table is used in case you use the dynamic user tag.
If you use a 3rd party contact extension, you can change what contact database table to use. This only works for tables where the user id is stored in the user_id field.
Export Format Select the file format for the export files (between JSON and XML).
Show Update Notification If selected, an update notification will be shown in the main component view when there is a new version for this extension.
Show Copyright If selected, extra copyright info will be displayed in the admin views. Regular Labs extensions never show copyright info or backlinks on the frontend.

User Actions Log

Log User Actions Select to store User Actions. These actions will be visible in the User Actions Log module.
Events To Log Select the actions to include in the User Actions Log.

Permissions

The Joomla permission settings control access to the different actions for each user group. For more information on how these permissions work, see the Joomla docs: Access Control List Tutorial: Component Options & Permissions

Installation

You can either install ReReplacer by using the core extension manager available in the Joomla! Administrator Control Panel, or by using the powerful Regular Labs Extension Manager.

Note: When updating ReReplacer, you do not need to uninstall it first. The package will update all the files automatically.

Keep in mind that when you update to a major new version (or uninstall first), you might lose some configuration settings.

Regular Labs Extension Manager

It is very easy to install/update any Regular Labs Extension using the Regular Labs Extension Manager.

Please see the Tutorial for the Regular Labs Extension Manager for more detailed information...

Joomla! Extension Manager

To install via the Joomla! Extension Manager, just follow these steps:

  1. Log into your Joomla administrator;
  2. In the menu, choose: Extensions >> Extensions;
  3. Choose the tab: Install from Web (or enable it if you haven't done so yet);
  4. Select the search field and enter ReReplacer and hit enter;
  5. Click on the ReReplacer listing;
  6. Click on Install;
  7. Click on Install to confirm.
Installer Web

Or if you need to install the Pro version or cannot install via the 'Install via Web' method for some reason:

  1. Download the extension install file (.zip);
  2. Log into your Joomla administrator;
  3. In the menu, choose: Extensions >> Extensions;
  4. Choose the tab: Upload Package File;
  5. Click on the Choose File button and select the extension zip;
  6. Click on Upload & Install.
Installer Upload

If you have problems installing ReReplacer, please try the manual installation process as described here: docs.joomla.org/Installing_an_extension