Lee Crowe
Jan 24, 2011
  7090
(2 votes)

EPiServer Search and Replace plug-in v1.2

I have released a new version of the Search and Replace plugin I released a few months ago.  Some UI enhancements have been made and there was an issue where the plugin fell over when running edit mode under a different relative file path location.

What is the EPiServer Search and Replace plug-in?

It’s a free plug-in aimed at content editors which allows content editors to search and replace content within an EPiServer site. 

The plugin has the ability to search and replace page properties, dynamic content and dynamic properties.

To install the plugin it is a simple as copying the compiled assembly into the bin folder and adding some configuration settings.  See the installation instructions here

How did the plug-in come about?

Myself and a couple of colleagues were discussing features missing from EPiServer.  One thing that came up several times in pitch meetings from project stake holders was whether the CMS offered the ability to search and replace content within a site. 

EPiServer doesn’t provide this functionality so I decided to create a plugin to do just this.

Search and Replace Plugin abilities

The plugin needed to meets the following requirements:

1. Search and replace page properties.

2. Search and replace dynamic properties.

3. Search and replace dynamic content.

4. For xml/xhtml content only replace the content of text nodes and attributes so that structure is not corrupted.

5. Maintain versioning history so that the editor can decide whether or not to publish/rollback the affected pages.

 

Using the plug-in

When the plugin has been setup a new tab will appear in the edit area named ‘Search and Replace.  The default view of this tab which is shown below allows the editor to create a new search and replace record or edit/delete an existing instance.

When the user clicks the Add ‘Search and Replace’ button. They will be presented with the following form:

Here the user can set various searching options, such as specifying a starting page, whether to search descendent pages of the start page and whether to search all language branches or specific ones, plus a few other options.

When the editor is happy with the criteria they can click ‘Go’.  This will invoke the search and replace on a seperate thread and the editor will be presented with a progress indicator which updates using AJAX like below:

Once the search and replace has completed the editor will then be presented with another screen informing them of the criteria used and any pages, dynamic properties that have been updated or any errors that have occurred:

This screen allows the editor to publish (only if the page has been in a published state) pages, roll them back or compare page versions using the new EPiServer 6 PageCompare plugin as shown below:

 

 

Further information

For further information on setup and the configuration options available please check out the Usage Instructions.

Compiled assemblies and source code can be found on codeplex http://episerversap.codeplex.com/.

 

Have feedback?

Please feel free to email or twitter me with any feedback @croweman

Jan 24, 2011

Comments

Mar 2, 2011 11:08 AM

Another feature that this module could support is the possibility to act as a report tool. EPiServer provides Report Center and Gadgets in the Online Center but many editors want "ad-hoc" reporting (eg. find all pages that has the following UR, older than 6 months and are marked with the following writer) and exporting it to Excel (or Word). I know we can build reports and gadgets but for many customers the the process of putting new "features" into the production environment is tedious and expensive.

I see great potential in the mechanism used for creating Visitor Groups in EPiServer CMS R2 as an interface for creating reports. Hopefully we can provide something good for all those customers asking for better insight into the quality of their data...

Jonathan Roberts
Jonathan Roberts Feb 15, 2013 10:53 AM

Hi,
Can you tell me if this works with content that is loaded in via bespoke Composer Content Blocks?
If so how do we use Search and Replace to do this task?

Many thanks

Jonathan

Please login to comment.
Latest blogs
Opti ID overview

Opti ID allows you to log in once and switch between Optimizely products using Okta, Entra ID, or a local account. You can also manage all your use...

K Khan | Jul 26, 2024

Getting Started with Optimizely SaaS using Next.js Starter App - Extend a component - Part 3

This is the final part of our Optimizely SaaS CMS proof-of-concept (POC) blog series. In this post, we'll dive into extending a component within th...

Raghavendra Murthy | Jul 23, 2024 | Syndicated blog

Optimizely Graph – Faceting with Geta Categories

Overview As Optimizely Graph (and Content Cloud SaaS) makes its global debut, it is known that there are going to be some bugs and quirks. One of t...

Eric Markson | Jul 22, 2024 | Syndicated blog

Integration Bynder (DAM) with Optimizely

Bynder is a comprehensive digital asset management (DAM) platform that enables businesses to efficiently manage, store, organize, and share their...

Sanjay Kumar | Jul 22, 2024

Frontend Hosting for SaaS CMS Solutions

Introduction Now that CMS SaaS Core has gone into general availability, it is a good time to start discussing where to host the head. SaaS Core is...

Minesh Shah (Netcel) | Jul 20, 2024

Optimizely London Dev Meetup 11th July 2024

On 11th July 2024 in London Niteco and Netcel along with Optimizely ran the London Developer meetup. There was an great agenda of talks that we put...

Scott Reed | Jul 19, 2024