In looking at the browser’s network console, I can see that the response is returning with the error message: “Blocked as suspected bot.” See screenshot below.
In doing a search through GitHub, it appears this is being caused by the MOJO Marketplace (mojo-marketplace-wp-plugin
).
It appears that plugin is requiring JavaScript to be active in the browser to identify non-bots. This is not a reliable signal anymore. Akismet and Antispam Bee have both opted to not output JavaScript on AMP pages (see PR), and MOJO Marketplace needs to not only do this but also not fail submissions when JS was not running on the client.
One possible workaround would be to trick the plugin into thinking the that the hidden JS field was provided. The following code placed in a custom plugin should do the trick:
function fake_mm_spam_process_hidden_field( $data ) {
// Forcibly set the js-spam-prevention post data to prevent mm_spam_process_hidden_field() later from failing.
$_POST['js-spam-prevention'] = md5( $_SERVER['HTTP_USER_AGENT'] . $_SERVER['REMOTE_ADDR'] );
return $data;
}
add_filter( 'preprocess_comment', 'fake_mm_spam_process_hidden_field', 5 );
add_filter( 'registration_errors', 'fake_mm_spam_process_hidden_field', 5 );
But I recommend reaching out to the plugin author to fix this issue. It’s important not only for AMP pages but also for any user who has JavaScript turned off.
—-
Screenshot of failure:

-
This reply was modified 4 years, 6 months ago by
Weston Ruter.