Censortive Anti-Censorship WordPress Plugin

Tired of Internet censorship? Is your site being blocked for having “sensitive” words? Then Censortive is for you. Use this plugin to replace those pesky words with their graphic equivalent, making them invisible to censorship robots.

Censortive uses text-to-image technology to convert user-defined ‘sensitive’ words into an image file that blends right into the flow of text. By changing the text into an image file, you effectively negate the censorship robots from being able to ‘see’ the offending words. Your readers, however, will be able to follow what you’re saying without a hitch.

Details

In some countries Internet censorship is at an unjustified level, with a host of Big Brother technologies working to block one of our basic human rights: freedom of speech. The most common way for them to do this is by using bots to scan the text from a site attempting to be viewed. If words deemed inappropriate are found, the viewer is left with an error screen.

However, by converting the words into small (near-identical to the original text) graphic files, the robots have no idea what is being said and happily let it all pass through.

To further increase security, rather than have the sensitive words saved in the post and filtered directly, users simply use a codeword, which when scanned by the plugin, is replaced by the text2graphic image of the intended word.

Installation

Unzip this compressed file to a temporary directory.

Edit ‘/censortive/codewords.dat’ in a plain text editor (not Word). Look at the example words on how to add your own. Be sure to maintain the same format (codeword=realword,). Note the comma at the end of each line, including the last line. Save the file.

Upload the ‘censortive’ folder to your ‘/wp-content/plugins/’ directory – making sure to copy the entire folder, and not just the files, maintaining the folder’s directory structure.

Activate the plugin through the ‘Plugins’ menu in WordPress.

Navigate to your WordPress Options menu and select the new ‘Censortive’ option. Adjust the settings to suit your blog’s style.

Example

This is an example of the plugin at work, for which we’ve used this Wikipedia entry. So now when I speak about [*dem*], [*TAM*], or [*FLG*]; I don’t need to worry about my site being shut down. Equally, if I want to write about [*hr*], [*tib*] or the [*dl*], I can do so with impunity. I can also set up words that I wish to use both freely and covertly. Such as when speaking about China, or [*China*].

Frequently Asked Questions

How do I mark words in my posts to be converted?

Simply enclose the codeword (as defined in ‘codeword.dat‘) in [* and *]. So if my codeword was ‘monkey’, I would input [*monkey*] in my post. Upon viewing, [*monkey*] would be replaced with a text-image of whatever it is equal (=) to in the ‘codeword.dat‘ file.

Can I use special characters, such as for other languages?

For characters with accents or tonal marks, it will largely depend on the font file you’re using and if it supports the characters. For completely different characters, such as Chinese characters or Arabic writing, the answers are more varied. We’ll be working on further functionality in this area in future releases, but currently it’s not supported.

So, where do I get fonts then?

We’ve included one font, a Sans-Serif font in the Libertine family – which is an open source font initiative (download more). We don’t distribute a large selection of fonts with the plugin, as they can be quite bulky, and vary greatly from blog to blog.

To make sure your text-to-images are most closely matched to your blog’s content, just find out what TrueType font your posts are set to display at, and then search your computer for those .TTF files. Once found, simply upload the file to the wp-content/plugins/censortive/fonts/ directory and change the Font File setting in the Censortive options.

Known Bugs

The bold thing. This is the largest thing standing in the way of total/seamless integration into the body text. Currently, when looking at the text-to-image words/phrases, it is immediately evident which have been changed. From a censorship standpoint, this isn’t a big issue, as the phrases are still graphic files, and not actual words. However, it doesn’t look as pretty as we’d like.

Support

Please leave questions in the comments section below, or e-mail us at the contact address above. This plugin is in ‘beta’ testing, so we do appreciate any feedback or comments you may have.

Terms & Disclaimer

This plugin is released under the GNU GPL and is 100% free. However, you are welcome to show your appreciation for the work we’ve put into this plugin by buy us a coffee.

Censortive is only a tool for the furtherance of free speech, and it is not foolproof. We cannot be held liable if something you say with the use of this plugin gets you in trouble with “Big Brother”. Please use it at your own risk.

Additionally, though we can not begin to imagine how, if the plugin pooches your server/blog/computer/toilet, we’re not going to take responsibility for that either.

Thanks

Thanks is owed to Stewart Ulm, of Moderate Design, for creating the original text2image script used in this plugin.

Hey Shaun, not a bad idea, though I think it’s a bit too risky, as it’s hard to say how/when the censorship robots see things. If they parse the HTML before censoring, it would negate the whole purpose of the plugin, as the text would then be seen clear as day.

I think for the small percentage of people who run into this problem on sites using this plugin, the “censortive word” thing should be enough to clue them into what’s going on.

Hi fiLi, I’m not entirely sure what you mean. You mean, you want a predefined list of words to be replaced with the codeword tags, so as to be compatible with the plugin? Or you wish for the plugin to work by searching the post for specific words (unmarked) and then change them?

Hey fiLi, I’ve added it to the wishlist for v2 to have an option to choose between codewords or just search and replace.

It’s not difficult to do, but the obvious downside to the second method is that the words are still in your database and will be in the PHP-based URL that passes the variables. All of these allow for the possibility to cause blocking. I’ve been blocked from my MySQL database because of a bad keyword in it.

I backup fili’s idea. I had the same thought, but he/she was just faster than me. Anyway, can’t tell how this could be done best, so I’ll leave it to the eggheads and grab a nice cup of coffee while I wait for it to be done.

….I lived in China, and it seems all my US-hosted websites are blocked. In fact, many people with innocent websites are blocked here in China. It is affected our communication and business…does this prevent an already blocked site?

A) It’s on an IP address that has been “hard” blocked. Ask your hosting company to change your hosting’s IP (they should be able to do this without too much trouble), and see if that helps. This block could have come from you or from anyone else that shares that IP – big hosting companies split their server space among 10s, 100s or 1000s of customers – if anyone one of those customers on the same IP as you is being blocked, it’ll cause your site to be blocked.

B) Your site’s content is the cause. As best I can figure, this “soft” blocking is done at the ISP level. When the user in a country that blocks sites access the “offending” site, the text of the page is first run through a filter. If a certain percentage of words are a match, the site is blocked. This block is where this plugin is effective. Though there is no released list of “hot” words, people in each country can guess which words might be causing them troubles and then use this plugin to substitute those words with images (unreadable by the ISP filter).

For your situation, I think you’re in the first boat – for whatever reason. See if your host can change your IP and see if that helps. If you’re in the second situation, I’m afraid this plugin wont be of much use, as it’s only for WordPress users.

Just for posterity, as I’ve already cleared this up with you in e-mail Flotsam, but the plugin will only work with self-hosted versions of WordPress – WordPress.com doesn’t allow plugins (to the best of my knowledge).

@Sean: Generally no, but it depends “how” it was blocked. If it was just an automatic block brought on by keywords being picked-up and deemed sensitive, then if the words are removed, the block will eventually remove itself.

Hi ryan,
This is a great plugin, thank you for the all the hard work.
I was just wondering if I could convert the entire post to image. Or parts of the post(like for example in the post has an image, then I am sure we would face problems converting an “image into an image”)
So that way instead of entering keywords all the time, I know that this entire post has tons of keywords which could get banned anywhere. So all I do is just convert the entire post or a part of it, to text.
Thank you

what a brilliant idea! but if it’s compatible with WP 2.7, please update wordpress.org plugins page– it only says compatible up to 2.3.

also, as qwan suggested, can you not convert the whole post into one big image, or every letter on the blog to individual images? that would simplify things for the blogger, because then they would not have to deal with code-words. might also improve help trip up phrase or contextual scanners.

also, could you make the alt words just random nonsense words, like ‘potato’, ‘ear’, ‘bicycle’? so scanners would not see “censortive” or any other recognizable word at all.

Excellent work, I was on the verge of doing this exact thing myself (something far above my php-ing head) when I found your plugin.

I’m with fiLi– I would love to not have to mark sensitive words. Is it possible to first change the word in the database TO the codeword and then replace the codeword with the image of the realword? The original sensitive word is gone, leaving only the codeword for bots to find.

I am glad I found your site on bing. Thanks for the sensible critique. Me and my wife were just preparing to do some research about this. I am very happy to see such reliable information being shared freely out there.
Best Regards,
Fergal from Philadelphia city

Any updates to this plugin? I could use something like this one. I found TextImage (?) but it hasn’t been updated since 2009. This plugin is even older since last update was way back 2007. Redactor does not appear to convert text to images. Suggestions? 🙂

Hi Marky, I’ve not updated the plugin, but was not aware that it was broken. You’re right though, an update it long overdue, I’ll take a look soon and see what I can punch up. Any suggestions for improvement?