Django - replacing string in whole project
This is more like an project architecture problem.
The best way of doing what i "think" you want is to:

create a list of the "strings" options in a database.
In the user model create a field like "chosen_string"
When the user selects the option to be used (the string) you just update the user model
whenever you want to use the strings , just do a query.
Currently I m creating quite big project and I need to implement functionality which will replace string with string provided by user. Moreover each of user can have his own custom string. I will give example for better understanding
there is a string "object" and user1 want to change string "object" to "tree", in whole project (all templates etc) string "object" is replaced by "tree"
My ideas are as folllow:

Creating middleware which would replace strings
Creating js plugin
Creating blockreplace(something like blocktrans) which would replace strings only in block ( I would also need to connect it with trans)

Do you have any other ideas which would be better? And which idea for you is the best option?
Examples:
Text in template main.html
...
this object is very useful
...
and every user can personalize site by his custom string

user1 wants "tree" instead of "object"
user2 wants "apple"
user3 wants "grape"

They save their settings and then when they enter main.html they see

user1: this tree is very useful 
user2: this apple is very useful 
user3: this grape is very useful

hope it helps