rah / rah_replace
Search and replace plugin for Textpattern CMS
Fund package maintenance!
www.paypal.me/jukkasvahn
Installs: 70
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 3
Forks: 1
Open Issues: 0
Type:textpattern-plugin
Requires
- php: >=5.6.0
- textpattern/installer: *
- textpattern/lock: >=4.7.0
Requires (Dev)
This package is auto-updated.
Last update: 2024-10-17 20:09:30 UTC
README
Textpattern CMS template tag that returns contained content with all searched occurrences replaced with given replacements, in the same manner as PHP’s str_replace function.
Install
Using Composer:
$ composer require rah/rah_replace
Or download an installer package.
Basics
The plugin, rah_replace, introduces a new container tag to Textpattern’s arsenal. The tag returns wrapped content with all found occurrences replaced with given replacements. A tag supports multiple searched occurrences and replacements.
<rah::replace from="value1, value2, ..." to="value1, value2, ...">
Searched content
</rah::replace>
Attributes
<rah::replace>
...contained statement...
</rah::replace>
The tag is a container and attributes for it follow.
from
Strings that will be searched and replaced with to
attribute’s values. Separate multiple values with a comma (or delimiter
if changed).
Default: from=""
Example: "dog,cat,house"
to
Replacements that will be used to replace from
attribute’s values. Comma (or delimiter
) separated if multiple.
Default: to=""
Example: "ship,home,hat"
delimiter
Sets the delimiter used in from
and to
to separate multiple values. Default is a comma.
Default: delimiter=","
Example: "|"
Examples
Replaces a dog with a cat
<rah::replace from="dog" to="cat">
My favorite animal is a dog.
</rah::replace>
Returns: My favorite animal is a cat.
Replace multiple needles with different replacements
<rah::replace from="house,dog,Mike" to="boat,friend,wife">
I live in a house with my dog and Mike.
</rah::replace>
Returns: I live in a boat with my friend and wife.
Replace multiple needles with a one replacement
<rah::replace from="Mike,dad" to="I">
I remember when dad and Mike did go to fishing.
</rah::replace>
Returns: I remember when I and I did go to fishing.
Using a different delimiter
By default any comma is treated as a delimiter and can not be used as actual value. To use a comma (,
) as a needle or a replacement, you would have to change the delimiter to something else. Like for instance to a vertical bar:
<rah::replace from=".|," to="!" delimiter="|">
A, B, C.
</rah::replace>
Returns: A! B! C!
Changelog
Version 0.5.0 – 2019/04/06
- Register the tag for Textpattern >= 4.7.0 compatibility.
- Now requires Textpattern >= 4.7.0.
Version 0.4.2 – 2013/05/07
- The Composer package uses textpattern/installer and textpattern/lock.
Version 0.4.1 – 2013/04/25
- Minor clean up.
- Released as a Composer package.
Version 0.4 – 2012/07/12
- Performance optimization.
Version 0.3 – 2011/04/22
- Performance optimization.
Version 0.2 – 2009/04/16
- Added a new attribute:
delimiter
.
Version 0.1 – 2009/04/16
- Initial release.