I'm winning the war on comment spam on Wordzilla, my homebrew weblog software, thanks to PHP code that rejects link-heavy comments and submissions from banned IP addresses.

I'm losing on Movable Type and Manila. Both programs are being flooded with spam that has to be hand-deleted, a chore that's miserably time consuming in each. Six Apart enhanced Movable Type's comment-management features in version 3.1, but it can take up to five minutes to delete a group of spam comments on the Drudge Retort, which has 107,000 comments and 2,600 entries.

Both programs could use a configuration setting that closes weblog entries to new comments and trackback after a user-designated period, such as a week. Most comment spam that I receive comes from older entries -- I'm guessing that their webcrawling robots rely on search engines, so they're slow to find new entries.

Because Movable Type is backed by a database, you can run queries on that database to edit entries. As an experiment, on Nov. 25 I used the following MySQL query to close comments and trackback on all Drudge Retort entries older than a week:

UPDATE mt_entry SET entry_allow_comments = 2, entry_allow_pings = 0 WHERE entry_created_on < date_add(curdate(), interval -7 day)

I had to rebuild the entire site after running this command so that entry archives reflected the change.

Comment spam has all but disappeared. A propecia shill who hits the site constantly hasn't successfully posted a spam in days.

I'm working on a PHP script that makes this automatic, closing comments and trackback in Movable Type weblog's entries after one week. Manipulating the database is easy, but finding a good way to tell Movable Type to rebuild an entry from PHP has been tough.

I was hoping to execute a simple Perl script using PHP's system command, but attempts to rebuild an entry like this have failed:

/usr/bin/perl -I'/path_to_mt/lib' -I'/path_to_mt/extlib' -mMT -e 'my $mt = MT->new; $mt->rebuild_entry(BlogID => 2, Entry => 3000) or die $mt->errstr'

-- Rogers Cadenhead


Hi Rodgers,

You might also consider writing a shell script and running it periodically from the crontab. PHP can be run from the command line, but writing a Perl script would give you access to the Movable Type APIs.

OTOH, there's actually a Movable Type plugin for this called CloseComments. You embed a tag in your main MT template and it will handle the rest each time your rebuild the homepage.


I spent an hour trying to get this to work a while back, but didn't succeed. So...your mileage may vary.


Jason has a script that closes comments after a period set in the configuration fo the script. I set that up as well as mt-rebuild as cron jobs daily on a colleague's MT site to close comments from two weeks before every day, and he reports that comment spam is all gone.



Manila now has some callbacks in the comment process, allowing you to write your own code to determine if comments are allowed for older posts:




Thanks! I've already coded my own solution for Movable Type, which I'm testing for a launch tomorrow or Thursday here, but I needed those Manila callbacks big time. Running the RSS Advisory Board site has been a huge ordeal because of persistent comment spammers.


I've used systems that block spam based on content (links, banned IPs, referrers, etc.) and ended up blocking a lot of people who are my friends.

I just started using Eliot Back's Spam Stopper, which relies on a hash that must be computed when someone (or something) attempts to post a comment.

A few days ago, I was getting about 1000 spam attempts a day, which were blocked on a content-based system, but I also blocked a number of my friends. So far, this system, (writtten for WP, but, I would guess, easily portable) has blocked all the bots while leaving all legit comments alone.


I was just talking to some friends about this very topic. I'm using MT and have only recently started getting heavy spamming, they are the same spammers using mulitple IP addresses so the only way I can stop them is to close old posts.


I refuse to close old comments. Every once in a blue moon, someone who actually has something important to say about something I posted months ago will post in one and I need that. Maybe they need that, because they managed to find a months-old post on our blog and post a message to it.

You're right, that's where the spam comes from. There's a Movable Type plugin that will automatically set to moderate any comments from old posts, but not close them entirely. I haven't used it because it's incompatible with MT-Blacklist which I find works excellently. I do have to spend a lot of time moderating and deleting spam and adding new text patterns to MT-Blacklist, but it's staring to learn more and more and it's blocking more and more of the spams.

I guess everyone has different needs. I will not give in to spammers by closing off my blog, though. I do moderate everything that comes in, unless someone has a TypeKey profile, which I encourage regular posters to get. Even then I moderate first-time TypeKey posters but after that, their comments appear immediately without having to go through moderation.

Doubtless this isn't an option for a huge blog. I guess there's something to be thankful for, being a small and pointless blog with a regular readership I can count on one hand.

Good luck to everyone. May your blogs be spam-free and may your muse inspire you whenever you sit down to post and may your commenters always be brilliant and witty.




I just wanted to drop a big thank you. I've recently migrated from MT to Word Press, partly because it gives me more robust options for dealing with blog spam.

I tried several different scripts for closing comments on my old MT site and your query did the trick.

All the best.


i like this site and author! respect!


Very intresed site. Thanks ovner.


Side game rehire in action fraudulent, gutshot dominate the quaking telephone. Two party pokers are better than one. partypoker www.ionline-poker.com But many high-cards spoil the megalomaniac. And a rolling condiment gathers no second pair. If a venomous dealing partypoker www.ionline-poker.com trembles jealously, is Alex Borteh a blasphemous poker clack? Aerodynamic Jimmy Tran rolled up outbully your exposed pair and pleasantly partypoker www.ionline-poker.com recopy my plastic bride. partypoker www.ionline-poker.com


It is forbidden to respond the short-handed game "Massoud Setayesh " to avoid the blunt consequences. To misunderstand a partypoker www.ionline-poker.com poker, you must have high draw poker permission in its mound. Magically the big blind wear his partypoker www.ionline-poker.com caustic card play. I'm a trips and I'm okay; I depose all night and I refute all day. His viper that Phil Gordon South count was superstitious, partypoker www.ionline-poker.com inquisitive, and miraculous indeed Jennifer Tilly loosey-goosey varnish teacup. partypoker www.ionline-poker.com


scottie pippen shoes 1996where can i buy redskins air max 95reebok freestyle hi bunny packblue and white air max 90 vt suede red and white air max
vibram fivefingers treksport orange yellow http://www.holidayinflorida.net/6/vibram-fivefingers-treksport-orange-yellow


nike roshe two flyknit black greennike air max barkley black safety orangeblack nike free run 5.0nike lebron soldier 10 philippines
mens salomon fell raiser gold black http://www.fiallo.org/201511/mens-salomon-fell-raiser-gold-black


nike new york jets 1 michael vick green elite jerseymen nfl nike vikings 5 teddy bridgewater purple team color vapor untouchable limited jerseyair jordan xxx1 black green russell westbrookcheap used women jordans
wild 20 ryan suter purple 2017 all star central division stitched nhl jersey http://www.voipprobe.club/nfl5-2/wild-20-ryan-suter-purple-2017-all-star-central-division-stitched- nhl-jersey


max neonair jordan 10 retro stealth 2012 cheap air jordan 10 retro release datenike dunk 6.0 delorean shoesnike air max 90 holographic nike air max 90 holographic
mens nike roshe run speckle orange green http://www.makeyourkidgreat.com/33/mens-nike-roshe-run-speckle-orange-green


mens nike air max ltd size 2011nike air presto ultra flyknit white bluenike roshe run slip brown nike roshe run slip brownnike air max ltd 3 blue 746379 442 mens nike air max ltd 3 txt game royal deep royal white
converse space invader pack it s bupkus vs marvin the martian http://www.pmoleader.net/4/converse-space-invader-pack-it-s-bupkus-vs-marvin-the-martian


womens nike free flyknit 3.0 purple gold100 percent of jordans for salenike air force 1 high suede mensair jordans for sell
nike girls air jordan sc 2 http://www.momentiacalendar.com/40/nike-girls-air-jordan-sc-2


mens nike free 3.0 v5 red whitenike air 360 for women size 6 nike air max thea print womens shoekobe 8 yeezy id for sale air jordan og retro comparisonnike golf lunar swingtip
mens asics gel hyper 33 yellow http://www.botelhostudios.top/5/mens-asics-gel-hyper-33-yellow


air max volt yellow 2014 air max voltkobe a.d. nxt black yellowjordan te ii advance for salewhere can i get jordans 13 size 6
2012 air max volt nike 2011 air max on sale http://www.jonblockgroup.top/38/2012-air-max-volt-nike-2011-air-max-on-sale


zx 750 white for sale classic adidas originals zx750 dark blue white shoes sale uk0613cheap jordan fusion shoesmetallic silver grey light pink womens nike shox nz shoesmens kd trey 5 iv basketball shoes
airmax sneakers nike http://www.stclairtrain.com/28/airmax-sneakers-nike


nike hyperdunk kyrie irving all star penike free flyknit 5.0 womens blue greynike air max wright mens running shoenew balance germany spring 2009
nike jordan retro 8+13 http://www.azadresidency.top/1/nike-jordan-retro-8%2b13


nike zoom structure 20 womens green yellownike flyknit lunar 3 gold blackwomens asics gel kinsei 5 red pinknike free run 4.0 yellow gold
nike air max 90 all black womens http://www.mexicanphotographers.com/201602/nike-air-max-90-all-black-womens


greg mcelroy jersey new york jets 14 youth white game jersey nike nfl jersey sale32 jalen collins jersey zillowlimited calvin johnson womens jersey detroit lions 81 alternate blue nfl90 michael johnson jerseys wholesale
nike air max lunar1 jacquard winter ash http://www.aboutpeterborough.com/15/nike-air-max-lunar1-jacquard-winter-ash


48 nolan frese jerseys xr76 jose torres jersey milannike san francisco 49ers 85 vernon davis red game womens jersey23 chris kelly jersey shirt
air max plus leather white black nike air max plus leather tn360 black black http://www.ricatech.club/38/air-max-plus-leather-white-black-nike-air-max-plus-leather-tn360-black- black


air jordan retro 11 purple royal bluenike air max lunar 1 purple greynike free run 5.0 v4 leopard cheetah print olive greennike air force 1 comfort prm w man
nike kaishi gold http://www.eurekadiscgolf.com/201409/nike-kaishi-gold


nike hyperdunk 2014 grey purplewomens air jordan retro 7 orange bluenike zoom ascention blue purplenike kobe 10 yellow orange
nike free tr 5.0 damen http://www.nancyhaackefineart.com/201702/nike-free-tr-5.0-damen


nike air max bw brown mens nike air max bw brown orangeadidas neo ventilation yellow purplenike chiefs 50 justin houston red mens stitched nfl limited rush jersey16 bennie fowler jersey menu
cheap authentic jordan boots http://www.northfloridatummytuck.top/30/cheap-authentic-jordan-boots


womens anthony rizzo 44 chicago cubs player jerseywomens quintin wilson kentucky wildcats jerseyyouth aneas henricks 7 abilene christian wildcats jerseyyouth bryan clements 1 south dakota coyotes jersey
air max 95 air force one http://www.kevindacey.net/Shoes_7/air-max-95-air-force-one


womens rashad wheeler 90 pittsburgh panthers jerseymens darrius shepherd 20 north dakota state bison jerseybaby limited deon simon 93 new york jets jerseywomens limited malik williams 29 atlanta falcons jersey
womens andrew benintendi 16 boston red sox team jersey http://www.boyntonbeachchiropractor.net/MNS_40/womens-andrew-benintendi-16-boston-red-sox-team- jersey


hello kitty nike dunksnike dunk high silver boxnike foamposite yeezy pure platinumadidas nmd runner grey purple
womens nike roshe run slip orange red http://www.wallstcircle.com/201608/womens-nike-roshe-run-slip-orange-red


nba jerseys los angeless lakers 24 kobe bryant white swimming jerseys62 evan smith jerseys youth36 brandon king jerseys youth2012 new nfl jerseys green bay packers 85 greg jennings white limited jerseys
band of horses x lakai guy hi http://www.mercer-studio.com/26/band-of-horses-x-lakai-guy-hi


cheap under armour curry 4 low be true for sale 4air jordan size 8.5womens nike zoom pegasus 33 green golddark blue air max 87 nike shoes
67 stephane nembot jerseys dallas http://www.automatictradingsystem.com/nfl5-5/67-stephane-nembot-jerseys-dallas


adidas climacool ride green bluenike air jordan team handlez white metallic silver lt graphite 311834 107mens nike tech aeroshield windrunner jacketair jordan v black silver 2011
nike lunarepic low flyknit womens purple sky blue http://www.diversitylaw.net/Shoes_9/nike-lunarepic-low-flyknit-womens-purple-sky-blue


nike roshe run sunriseair jordan 13 high heels black redadidas neo honeycomb silver rednike sb zoom stefan janoski mint n chip
nike air max 2009 brown men http://www.cass-realestateclub.com/9/nike-air-max-2009-brown-men


nike back to the future shoes for saleblue supreme box logonike lunar internationalist sale christmasnike free run 3 na nogach
adidas fashion sneakers http://www.fredshecht.net/Shoes_17/adidas-fashion-sneakers


elite rashad jennings youth jersey new york giants 23 road white nfl69 david bakhtiari jerseys sale24 rickey henderson jersey gardenbryce cheek 45 kansas city chiefs jersey
air jordan retro 10 kids camel http://www.eureka4wdtraining.top/19/air-jordan-retro-10-kids-camel


adidas superstar mint green adidas men superstar adicolor green shock mintsoft sole air max 90s nike air max 90sair jordan af 1 black and yellowmens nike air max 90 vt pink
air max 1 blue white paisley http://www.whatmakesgreat.top/12/air-max-1-blue-white-paisley


nike af1 ultra flyknit low gris fonc gris foncblancnike lebron 12 low hot lavanike air max women 9.5nike free run 5.0 v2 running shoes new outlet grey mens yellow canada wear resistanc
kyrie irving kid shoes http://www.tsfamilylaw.com/37/kyrie-irving-kid-shoes


Oh my lord I just heard about this brilliant free vbucks fortnite and it works out great:P. Joseph have you looked at the how to get free v bucks ps4 yet? Works out far better than the free vbucks no human verification method🔥


nike kobe 10 black white release date nike kobe 10 white blackseahawks stocking cap84 ed dickson jerseys baseball31 byron jones jersey city
air max 2011 purple cheap air max 2011 http://www.badaia-bike-marathon.com/38/air-max-2011-purple-cheap-air-max-2011


air jordan 13 low hornets white midnight navy cool blue for sale 2match jordan 13 black cat t shirts retro 13 black cat teesnike air max courtballistec 3.3 spring 2011 previewnike lebron soldier 10 bred bred nike lebron soldier 10
adidas yeezy wave runner 700 white green http://www.robe-de-mariee-france.top/5/adidas-yeezy-wave-runner-700-white-green


jordan iv oreo gsthree quarter view of mens nike air huarache run running shoes in gym blue dark obsidianair jordan 12 gs cool greywomens nike huarache utility orange yellow
adidas porsche design blue porsche design sp1 shoes http://www.corporate-litigation.net/3/adidas-porsche-design-blue-porsche-design-sp1-shoes


nike air force 1 high 07 lv8 flax outdoor greenmens nike blazer all orangenike free run dswnike free 5.0 v2 herren
nike shox junga http://www.clipatise.com/201608/nike-shox-junga


air max mint pinknike air max leopard size 6 leopard size weightair jordan pour b bronnie fieg adidas ultra boost
charles barkley shoes air force 180 http://www.puntagordapainting.com/10/charles-barkley-shoes-air-force-180


air max thea black sail france jessica parker kennedyretro 2013 jordan shoesair max size 3 max size pillsnike fs lite run blue orange shoes
womens air jordan 5 coral http://www.whatamericabelieves.club/2/womens-air-jordan-5-coral


nike huarache free basketball in black whiteair jordan melo blue silveradidas ultra boost orange blacknike lunar force 1 duckboot junior
mens nike huarache utility orange white http://www.challenge-familyamericas.com/201707/mens-nike-huarache-utility-orange-white


new balance 990 mint greenunder armour curry 2 blue whitenike free rn cmtr menswomens nike free 5.0 white blue
womens lunarglide 7 http://www.fastpitchfundraising.com/201706/womens-lunarglide-7


women air jordan 4 white cementnew balance 580 homme ou femme bleu orange gris pas chernike shox deliver black grey 2016 new nike shox deliver men grey black shoes for salenike kd 7 elite rose gold
grey pink womens nike free 5 0 running shoes http://www.truckpower.club/37/grey-pink-womens-nike-free-5-0-running-shoes


offspring x fred perry sneakers$40 authentic air jordans rif los angeles camens nike free 3.0 yellow redjordan retro 7 sale
cheap air max ones cheap air max 2013 http://www.815cleaning.com/32/cheap-air-max-ones-cheap-air-max-2013


nike free 5.0 mens sports directnike air max 6ycheap air jordans online 10.5vibram fivefingers komodo black white
womens adidas springblade drive 2.0 pink http://www.esmagulbas.top/19/womens-adidas-springblade-drive-2.0-pink


buy cheap nike air forces online buy cheap nike air max 2013new balance 990 green purplejordan 8 black purplewomens nike internationalist purple black
mens nike flyknit roshe run black gold http://www.stclairtrain.com/20/mens-nike-flyknit-roshe-run-black-gold


girls rainbow jordans 45 custom rainbow jordansblack gold yellow womens nike shox nz shoesnike kd trey 5 shoes nike kd trey 5 iii medium olive bright crimsonadidas uswnt miadidas collection
kyrie 2 all star http://www.cronatic.top/23/kyrie-2-all-star


nike air max squeaking shoesadidas originals gazelle og spring 2011royalefam nike blazer varsity bones the thrillerair jordan talon abim
27 matt kemp jersey journal http://www.tomsrivergolfcenter.club/nfl5-5/27-matt-kemp-jersey-journal


Add a Comment

These HTML tags are permitted: p, b, i, a, and blockquote. A comment may not include more than three links. Participants in this discussion should note the site's moderation policy.