/comments/submit
{% form 'comment_submit' %}
Gated by the blog comments mode (disabled / everyone / registered customers) and moderation setting.
Form fields
-
post_slugRequired Blog post being commented on.
-
contentRequired Comment body.
-
author_nameOptional Required for guests; logged-in customers default to their account name.
-
author_emailOptional Required for guests.
-
websiteOptional Honeypot — must stay empty; bots that fill it are dropped.
-
_formatOptional Set to json when submitting with fetch; omit for the normal browser redirect.
Validation
Post must exist; comments mode, guest/customer identity, and moderation are enforced. Comments are flat — there is no reply threading.
Limits
Content 5000 characters; guest name 255; guest email 255; per-store hourly submission cap.
Response
{
success:true,
pending,
response,
user_errors
}
pending reflects moderation.
Whether comments are open comes from the store's blog settings. The merchant chooses who can comment — everyone, only logged-in customers, or nobody — and whether new comments wait for review before appearing. When comments are turned off, the whole surface goes quiet: existing comments stop appearing anywhere and counts show zero. Nothing is deleted; turning comments back on brings everything back as it was. Logged-in customers comment under their account name and email automatically; guests provide both with their comment. Comments are flat — there are no replies.