{"id":31722,"date":"2022-11-29T11:29:50","date_gmt":"2022-11-29T11:29:50","guid":{"rendered":"https:\/\/crocoblock.com\/knowledge-base\/?post_type=article&#038;p=31722"},"modified":"2025-07-22T16:44:22","modified_gmt":"2025-07-22T16:44:22","slug":"creating-custom-commenting-system","status":"publish","type":"article","link":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/","title":{"rendered":"How to Create Custom Commenting System"},"content":{"rendered":"\n<div class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1024x640.webp\" alt=\"testing custom commenting system on the front end\" class=\"wp-image-48712\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-to-create-comments\">How to Create Comments<\/h2>\n\n\n\n<p>In this tutorial, we will focus on setting up the commenting system, which features a fully customizable comment layout provided by the <strong>CCTs<\/strong>. We will create a form for submitting the comments and ensure that only logged-in users can leave comments on the site.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<h3 class=\"wp-block-heading\" id=\"create-a-custom-content-type-to-store-comments\">Create a Custom Content Type to store comments<\/h3>\n\n\n\n<p>Navigate to the <strong><em>WordPress Dashboard > JetEngine > Custom Content Types <\/em><\/strong>and click the \u201c<strong>Add New\u201d <\/strong>button to create a new <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/custom-content-type\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Custom Content Type<\/strong><\/a> (<strong>CCT<\/strong>), which will store the list of comments.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image aligncenter size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type-1024x640.webp\" alt=\"creating a new custom content type\" class=\"wp-image-48713\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-new-custom-content-type.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p><strong>CCTs <\/strong>are similar to <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/how-to-create-a-custom-post-type-based-on-jetengine-plugin\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>CPTs<\/strong><\/a><strong> <\/strong>but have two main differences. Firstly, <strong>Custom Content Type<\/strong> items do not have <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/creating-custom-post-type-archive-template-with-jetengine-listing-grid\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Single Pages<\/strong><\/a>. Secondly, they have a unique approach to data storage. It makes <strong>CCTs <\/strong>an ideal choice for storing comments because new comments will not affect the website&#8217;s loading speed.<\/p>\n\n\n\n<p>You will find more information on this topic in our article on <a href=\"https:\/\/crocoblock.com\/blog\/custom-content-type-brand-new-data-storage-approach\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Custom Content Type: Brand New Data Storage Approach<\/strong><\/a>.\u00a0<\/p>\n\n\n\n<p>In the same editing screen, scroll down to the <strong>Field <\/strong>tab. Add the necessary fields to store the comments\u2019 data. Add a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/meta-field-types-overview\/#text\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Text<\/strong><\/a> field to keep the comment title and a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/meta-field-types-overview\/#wysiwyg\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>WYSIWYG<\/strong><\/a> field to store the comment content.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type-1024x640.webp\" alt=\"adding more fields to the custom content type\" class=\"wp-image-48714\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-more-fields-to-the-custom-content-type.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Save the <strong>CCT <\/strong>by pressing the \u201c<strong>Add Content Type<\/strong>\u201d<strong> <\/strong>button once you are ready.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"add-a-sample-comment-to-the-cct\">Add a sample comment to the CCT<\/h3>\n\n\n\n<p>Find the <strong>CCT<\/strong> you created<strong> <\/strong>in the left sidebar and click on it. Click the \u201c<strong>Add New<\/strong>\u201d button to create a new <strong>CCT Item<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type-1024x640.webp\" alt=\"adding a new item to the custom content type\" class=\"wp-image-48715\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-new-item-to-the-custom-content-type.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In the newly opened page, fill in the empty fields and click the \u201c<strong>Add<\/strong>\u201d button once you are ready.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct-1024x640.webp\" alt=\"adding a sample item to cct\" class=\"wp-image-48716\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-a-sample-item-to-cct.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"create-a-listing-item-template-for-the-cct\">Create a listing item template for the CCT<\/h3>\n\n\n\n<p>To design the comment layout, build a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-what-is-a-listing-template\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Item template<\/strong><\/a>.\u00a0<\/p>\n\n\n\n<p>To create a new <strong>Listing Item template<\/strong>, head to <strong><em>WordPress Dashboard &gt; JetEngine &gt; Listings<\/em><\/strong><strong><em>\/<\/em><\/strong><strong><em>Components <\/em><\/strong>and click the \u201c<strong>Add New Item<\/strong>\u201d button.&nbsp;<\/p>\n\n\n\n<p>Refer to our <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-content-type-listing-template\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Create Custom Content Type Listing Template in Elementor<\/strong><\/a> tutorial to ensure you have the correct setup.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments-1024x640.webp\" alt=\"creating a listing item template for comments\" class=\"wp-image-48717\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-listing-item-template-for-comments.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>With the help of the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-dynamic-field-widget-overview-how-to-use-filter-field-output\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Field<\/strong><\/a> widgets or blocks, display the comment data. Choose \u201cPost\/Term\/User\/Object Data\u201d as the <strong>Source <\/strong>and select the needed field of the <strong>CCT <\/strong>from the <strong>Object Field <\/strong>dropdown.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor-1024x640.webp\" alt=\"designing the comments in elementor\" class=\"wp-image-48718\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-elementor.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>The setup will be the same regardless of whether you use the Gutenberg editor.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg-1024x640.webp\" alt=\"designing the comments in gutenberg\" class=\"wp-image-48719\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-comments-in-gutenberg.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"add-information-about-the-comment-author\">Add information about the comment author<\/h3>\n\n\n\n<p>It is not enough to display only the title and the body of the comment, as information about the comment author should also be included.&nbsp;<\/p>\n\n\n\n<p>Drag and drop a new <strong>Dynamic Field<\/strong> widget or block to the editor to display user data. Choose \u201cPost\/Term\/User\/Object Data\u201d as the <strong>Source<\/strong>. After that, open the <strong>Object Field <\/strong>dropdown to see the available list of options for user data. For example, output the user&#8217;s \u201cNickname\u201d. Then select the needed user field, scroll down to the <strong>Context <\/strong>dropdown, and select \u201cCurrent CCT item author\u201d from the list. This way, the user information will be queried by the author of the current comment.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor-1024x640.webp\" alt=\"displaying information about the comment author in elementor\" class=\"wp-image-48720\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-elementor.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>The same workflow should be repeated if you are using the Gutenberg editor.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg-1024x640.webp\" alt=\"displaying information about the comment author in gutenberg\" class=\"wp-image-48721\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/displaying-information-about-the-comment-author-in-gutenberg.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Display the profile picture of the comment author. For this purpose, use the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-dynamic-image-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Image<\/strong><\/a><strong> <\/strong>widget in the Elementor page builder or the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/dynamic-image-block-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Image<\/strong><\/a> block in Gutenberg.\u00a0<\/p>\n\n\n\n<p>Note that you are not limited to the default user fields of WordPress. If you created a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/meta-boxes-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Meta Box<\/strong><\/a> for users to store additional user information, you can display it through the \u201cMeta Data\u201d <strong>Source<\/strong> of the <strong>Dynamic Field <\/strong>widget. If you don\u2019t have a user <strong>Meta Box<\/strong> yet, you can create one by following our guide on <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-how-to-apply-meta-boxes-to-users\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Apply Meta Boxes to Users<\/strong><\/a>.\u00a0<\/p>\n\n\n\n<p>After designing the Listing Item template, click \u201c<strong>Update<\/strong>\u201d to save the changes and return to the WordPress Dashboard.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"create-a-relation-between-the-cpt-and-the-cct\">Create a relation between the CPT and the CCT<\/h3>\n\n\n\n<p>To link the new comments to the commented object, create a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-wordpress-relations-feature-settings-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Relation<\/strong><\/a> between the <strong>Custom Post Type<\/strong> and the <strong>Custom Content Type<\/strong>. The relation will link a comment to the post under which the comment was left.\u00a0<\/p>\n\n\n\n<p>Go to <strong><em>WordPress Dashboard > JetEngine > Relations <\/em><\/strong>and press the \u201c<strong>Add New<\/strong>\u201d<strong> <\/strong>button to create a relation. The <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-related-custom-content-type-items\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Related Custom Content Type Items<\/strong><\/a> tutorial provides a comprehensive overview of the settings.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments-1024x640.webp\" alt=\"creating a relation between the posts and the comments\" class=\"wp-image-48722\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-relation-between-the-posts-and-the-comments.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In this case, define comments as the <strong>Child object<\/strong> and the <strong>CPT <\/strong>(the posts that will have this commenting system) as the <strong>Parent object<\/strong>. The <strong>Relation type <\/strong>should be set to \u201cOne to many\u201d because one post should have multiple comments.&nbsp;<\/p>\n\n\n\n<p>Click the \u201c<strong>Add Relation<\/strong>\u201d<strong> <\/strong>button to save the changes.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"create-a-custom-query-with-the-related-items-macro\">Create a custom query with the related Items macro<\/h3>\n\n\n\n<p>To display only related comments under the post, create a custom query in the <strong>Query Builder <\/strong>tool of the <em>JetEngine <\/em>plugin. Follow <strong><em>WordPress Dashboard &gt; JetEngine &gt; Query Builder &gt; <\/em><\/strong>click the \u201c<strong>Add New<\/strong>\u201d button.&nbsp;<\/p>\n\n\n\n<p>Firstly, give a name to a custom query and choose \u201c<a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-query-builder-cct-query-type\/\" target=\"_blank\" rel=\"noreferrer noopener\">Custom Content Type Query<\/a>\u201d as the <strong>Query Type<\/strong>.\u00a0Scroll down to select the appropriate <strong>CCT<\/strong> in the <strong>From Content Type <\/strong>dropdown. Set \u201cPublish\u201d in the <strong>Status <\/strong>field to show only published comments on the front end.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct-1024x640.webp\" alt=\"creating a custom query for cct\" class=\"wp-image-48723\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/creating-a-custom-query-for-cct.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>In the <strong>Order &amp; Order By <\/strong>section, click \u201c<strong>Add new sorting parameter<\/strong>\u201d<strong> <\/strong>to order the comments by date. In the <strong>Order By<\/strong> field, select the \u201cCreated Date\u201d option. In the <strong>Order <\/strong>field, choose the \u201cFrom lowest to highest values (1, 2, 3; a, b, c)\u201d. Set the \u201cDate\u201d for the <strong>Type<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date-1024x640.webp\" alt=\"ordering comments by date\" class=\"wp-image-48724\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/ordering-comments-by-date.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>After that, click the \u201c<strong>Add new<\/strong>\u201d button in the <strong>Query<\/strong> section to query comments by their related post. Use the setup described in the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-macros-for-wordpress-relations\/#cct-query\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Macros for WordPress Relations<\/strong><\/a> guide.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro-1024x640.webp\" alt=\"configuring the related items macro\" class=\"wp-image-48725\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-related-items-macro.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Select the \u201cItem ID\u201d in the <strong>Field <\/strong>input and choose the \u201cIn the List\u201d <strong>Compare <\/strong>operator.&nbsp;<\/p>\n\n\n\n<p>The \u201cRelated Items\u201d<strong> <\/strong>macro in the <strong>Value <\/strong>field will help us get related items from the current post.&nbsp;<\/p>\n\n\n\n<p>In the <strong>From Relation <\/strong>dropdown, select the new relation; in the <strong>From Object <\/strong>list, choose \u201cChild Object\u201d to get the list of child comments on the current post page; for the <strong>Initial Object ID From <\/strong>field, leave the default \u201cCurrent Object ID\u201d option &#8211; it will pull the ID of the current post. Finally, press the \u201c<strong>Apply<\/strong>\u201d button.&nbsp;<\/p>\n\n\n\n<p>Choose the \u201cChar\u201d data <strong>Type<\/strong>.<\/p>\n\n\n\n<p>Click the \u201c<strong>Add Query<\/strong>\u201d button once you are ready with the settings.&nbsp;<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"output-the-related-comments-on-the-single-post-page\">Output the related comments on the single post page<\/h3>\n\n\n\n<p>Now, it is time to display the comments. If you plan to add the commenting system to a <strong>Custom Post Type<\/strong>, head to the <strong>Single Post template<\/strong> or the editing screen of a single post. Open it with the Elementor or Gutenberg editor. Find the section in your post\u2019s layout that should contain post comments and place the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-grid-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Grid<\/strong><\/a><strong> <\/strong>widget or block<strong> <\/strong>in this section.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget-1024x640.webp\" alt=\"adding comments with the listing grid widget\" class=\"wp-image-48726\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-widget.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>For this <strong>Listing Grid <\/strong>widget, select the <strong>Listing Item<\/strong> template created before. Set the <strong>Columns Number <\/strong>to \u201c1\u201d so that each new comment appears in a new row.&nbsp;<\/p>\n\n\n\n<p>In the <strong>Content <\/strong>settings tab of the <strong>Listing Grid <\/strong>widget, scroll down to the <strong>Custom Query <\/strong>tab and turn the<strong> Use Custom Query<\/strong> toggle on and select the query created before in the <strong>Custom Query <\/strong>field.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget-1024x640.webp\" alt=\"applying the custom query to the listing grid widget\" class=\"wp-image-48727\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/applying-the-custom-query-to-the-listing-grid-widget.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>It is completely fine that there is a \u201cNo data was found\u201d message \u2014 there are no related comments yet. Remember that you can change the message&#8217;s text in the <strong>General<\/strong> tab of the settings.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget-1024x640.webp\" alt=\"customizing not found message in the listing grid widget\" class=\"wp-image-48728\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/customizing-not-found-message-in-the-listing-grid-widget.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Publish<\/strong>\u201d button once you are finished.&nbsp;<\/p>\n\n\n\n<p>In the Gutenberg editor, follow the same setup for the <strong>Listing Grid<\/strong> block.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block-1024x640.webp\" alt=\"adding comments with the listing grid block\" class=\"wp-image-48729\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-comments-with-the-listing-grid-block.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Apply the query you created before in the <strong>Custom Query<\/strong> tab.\u00a0<\/p>\n\n\n\n<p>Click the \u201c<strong>Publish<\/strong>\u201d button.<\/p>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"how-to-create-an-input-form-for-comment-submissions\">How to Create an Input Form for Comment Submissions<\/h2>\n\n\n\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<div class=\"wp-block-group is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"wp-block-group__inner-container\">\n<h3 class=\"wp-block-heading\" id=\"design-the-form-layout-in-jetformbuilder\">Design the form layout in JetFormBuilder<\/h3>\n\n\n\n<p>Head to <strong><em>WordPress Dashboard &gt; JetFormBuilder &gt; Forms &gt;&nbsp; <\/em><\/strong>click the \u201c<strong>Add New Form<\/strong>\u201d button. The form we are going to create will post a new<strong> CCT Item<\/strong> (comment) and link it to the current post with the relation.&nbsp;<\/p>\n\n\n\n<p>Following our <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-insert-update-cct-via-form\/#add-custom-content-type\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Insert and Edit Custom Content Type Items via Form<\/strong><\/a> guide, we created a form for adding <strong>CCT <\/strong>Items.\u00a0<\/p>\n\n\n\n<p>In this case, we add a <a href=\"https:\/\/jetformbuilder.com\/features\/text-field\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Text Field<\/strong><\/a> for the comment title, a <a href=\"https:\/\/jetformbuilder.com\/features\/wysiwyg-field\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>WYSIWYG Field<\/strong><\/a> for the comment body, and a <a href=\"https:\/\/jetformbuilder.com\/features\/hidden-field\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Hidden Field<\/strong><\/a> to get the ID of the current post.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions-1024x640.webp\" alt=\"designing the form for comment submissions\" class=\"wp-image-48730\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/designing-the-form-for-comment-submissions.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>To display the profile picture of the currently logged-in user in the form, add a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/articles\/jetengine-dynamic-image-block-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Image<\/strong><\/a><strong> <\/strong>block to the editing area, select the needed user field, and set the <strong>Context<\/strong> to \u201cCurrent User (global).\u201d\u00a0<\/p>\n\n\n\n<p>Add as many field types and block elements as you need for your case. If you are not familiar with <a href=\"https:\/\/jetformbuilder.com\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>JetFormBuilder<\/em><\/a><em> <\/em>forms, it is recommended that you review the <a href=\"https:\/\/jetformbuilder.com\/features\/overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>JetFormBuilder Overview<\/strong><\/a>.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"add-the-insertupdate-custom-content-type-item-action\">Add the Insert\/Update Custom Content Type Item action<\/h3>\n\n\n\n<p>Once you are done editing the form layout, proceed to the setting of the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-insert-update-cct-via-form\/#edit-cct-status-or-fields-mapping\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Insert Custom Content Type Item Post-Submit Action<\/strong><\/a>.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action-1024x640.webp\" alt=\"configuring the insert\/update custom content type item action \" class=\"wp-image-48731\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-insertupdate-custom-content-type-item-action.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Set the needed <strong>CCT<\/strong> in the <strong>CONTENT TYPE<\/strong><strong> <\/strong>field. There are two options for the <strong>ITEM STATUS<\/strong>:<strong> &#8220;<\/strong>Publish\u201d and \u201cDraft.\u201d If you wish to approve the comments manually, go for the \u201cDraft\u201d option. Finally, map the form fields with their respective <strong>CCT <\/strong>meta fields in the <strong>FIELDS MAP<\/strong><strong> <\/strong>section. Ensure that the dropdown near the <strong>post_id<\/strong> field is left blank.&nbsp;<\/p>\n\n\n\n<p>Push the \u201c<strong>Update<\/strong>\u201d button to save<strong> <\/strong>the changes and return to the editing screen.&nbsp;<\/p>\n\n\n\n<p>Add a <a href=\"https:\/\/jetformbuilder.com\/features\/send-email\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Send Email<\/strong><\/a><strong> <\/strong>action to notify the administrator about the new comment.\u00a0<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"add-the-connect-relation-items-action\">Add the Connect Relation Items action<\/h3>\n\n\n\n<p>Now, implement logic that connects the created <strong>CCT <\/strong>item to the current post.&nbsp;<\/p>\n\n\n\n<p>For this purpose, add a new post-submit action \u2014 <a href=\"https:\/\/jetformbuilder.com\/features\/jetformbuilder-connecting-wordpress-related-items-with-post-submit-actions\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Connect Relation Items<\/strong><\/a>.\u00a0<\/p>\n\n\n\n<p>Press the \u201c<strong>pencil<\/strong>\u201d<strong> <\/strong>icon to edit the <strong>Connect Relation items <\/strong>action.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post-1024x640.webp\" alt=\"configuring the connect relation items action to connect comments to the current post\" class=\"wp-image-48732\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/configuring-the-connect-relation-items-action-to-connect-comments-to-the-current-post.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>For the <strong>RELATION<\/strong> field, select the relation that was created earlier.&nbsp;<\/p>\n\n\n\n<p>For the <strong>PARENT ITEM ID<\/strong> field, select the \u201cpost_id\u201d form field. Because the \u201cpost_id\u201d field has a \u201cCurrent Post ID\u201d value, the current post will be set as the related parent of the newly created <strong>CCT <\/strong>item.&nbsp;<\/p>\n\n\n\n<p>For the <strong>CHILD ITEM ID<\/strong> field, select the \u201cinserted_cct_slug\u201d option (in this article, it is \u201cinserted_cct_comments_list\u201d, instead of the \u201ccomments_list\u201d, you will see the slug of your <strong>CCT<\/strong>).&nbsp;<\/p>\n\n\n\n<p>Then, set the <strong>UPDATE CONTEXT<\/strong><strong> <\/strong>to \u201cWe updating children items for the parent object\u201d and the <strong>HOW TO STORE NEW ITEMS<\/strong><strong> <\/strong>field to \u201cAppend new items to already existing related items.\u201d<\/p>\n\n\n\n<p>Now, this post-submit action will relate the new comment to the post that has been commented on.&nbsp;<\/p>\n\n\n\n<p>Don\u2019t forget to press the \u201c<strong>Update<\/strong>\u201d button to implement<strong> <\/strong>the changes and return to the main editing screen.&nbsp;<\/p>\n\n\n\n<p>Open the <strong>JetForm<\/strong> tab in the right sidebar and unfold the <strong>Form Settings <\/strong>tab. Set the <strong>SUBMIT TYPE <\/strong>of the form to \u201cPage Reload.\u201d\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type-1024x640.webp\" alt=\"selecting the page reload as the preferred submit type\" class=\"wp-image-48733\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/selecting-the-page-reload-as-the-preferred-submit-type.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>After that, click the \u201c<strong>Save<\/strong>\u201d button.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"add-the-form-to-the-page\">Add the form to the page<\/h3>\n\n\n\n<p>Head to the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetthemecore\/how-to-add-a-single-post-page-template-with-elementor\/\" target=\"_blank\" rel=\"noreferrer noopener\">Single Post template<\/a> or to the editing screen of a single post that should contain the commenting system. Open it with the Elementor or Gutenberg editor. Find the section in your post\u2019s layout that should contain post comments and place the <strong>JetForm <\/strong>widget or block inside.\u00a0<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor-1024x640.webp\" alt=\"jetform widget in elementor editor\" class=\"wp-image-48734\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-widget-in-elementor-editor.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Select the created form and set the <strong>Submit Type <\/strong>of the widget to \u201cPage Reload.\u201d&nbsp;<\/p>\n\n\n\n<p>In the <strong>Style <\/strong>section, you can set the form design.&nbsp;<\/p>\n\n\n\n<p>Click the \u201c<strong>Publish<\/strong>\u201d button once you are ready.\u00a0If you are working in Gutenberg, add the <strong>JetForm<\/strong> block to the editing area and select the created form; set the <strong>SUBMIT TYPE <\/strong>to \u201cPage Reload.\u201d<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor-1024x640.webp\" alt=\"jetform block in gutenberg editor\" class=\"wp-image-48735\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/jetform-block-in-gutenberg-editor.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"add-dynamic-visibility-rules\">Add Dynamic Visibility rules<\/h3>\n\n\n\n<p>Use <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/dynamic-visibility-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Visibility<\/strong><\/a> to hide the form for guest users. To configure the visibility conditions in the Elementor editor, select the <strong>JetForm <\/strong>widget and proceed to the <strong>Advanced <\/strong>settings tab. Please scroll down to the <strong>Dynamic Visibility<\/strong> section and expand it. <strong>Enable<\/strong> the Dynamic Visibility conditions.\u00a0<\/p>\n\n\n\n<p>Then, add a new <strong>Visibility Condition Type <\/strong>\u2014 \u201cShow element if condition met\u201d. Add a new condition item and select the \u201cUser logged in\u201d option in the <strong>User<\/strong> section of the dropdown list.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor-1024x640.webp\" alt=\"hiding the form for guest users with dynamic visibility in elementor\" class=\"wp-image-48736\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/hiding-the-form-for-guest-users-with-dynamic-visibility-in-elementor.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Publish<\/strong>\u201d button.&nbsp;<\/p>\n\n\n\n<p>To add visibility conditions in the Gutenberg editor, select the <strong>JetForm <\/strong>block in Gutenberg. There will be an eye-shaped icon on the toolbar at the top of the block; click on it.<\/p>\n\n\n\n<p>Add a new <strong>VISIBILITY CONDITION TYPE <\/strong>\u2014 \u201cShow element if condition met.\u201d Add a new condition item and select the \u201cUser logged in\u201d option in the <strong>User<\/strong> section of the dropdown list.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg-1024x640.webp\" alt=\"adding dynamic visibility conditions to jetform block in gutenberg\" class=\"wp-image-48737\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/adding-dynamic-visibility-conditions-to-jetform-block-in-gutenberg.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Click the \u201c<strong>Save<\/strong>\u201d button. Now, the form will only be displayed for logged-in users.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" id=\"check-the-result\">Check the result<\/h3>\n\n\n\n<p>Go to the frontend page of the single post and find the form. Try submitting a new comment.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1-1024x640.webp\" alt=\"testing custom commenting system on the front end\" class=\"wp-image-48738\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<p>After the form is submitted, the page will reload, and a new comment will appear.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form-1024x640.webp\" alt=\"another comment added via form\" class=\"wp-image-48739\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/another-comment-added-via-form.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>To verify that the <strong>Dynamic Visibility<\/strong> works for the guests, we logged out of the site and reopened the same page.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"640\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests-1024x640.webp\" alt=\"dynamic visibility hides the form for guests\" class=\"wp-image-48740\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests-1024x640.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests-300x188.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests-768x480.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests-1536x960.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests-600x375.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/dynamic-visibility-hides-the-form-for-guests.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Now we can see the comments, but there is no form to add them for logged-out users.&nbsp;<\/p>\n\n\n\n<p>That\u2019s it. Now you know how to create a commenting system with a fully customizable comment layout, provided by the <strong>CCTs<\/strong> of <em>JetEngine<\/em>, and an input form from <em>JetFormBuilder<\/em>, WordPress plugins.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This detailed guide will help you create a commenting system with a fully customizable comment layout provided by the CCTs of JetEngine and an input form of JetFormBuilder. Not only for posts &#8211; you can add comments to users and terms.<\/p>\n","protected":false},"author":20,"featured_media":0,"template":"","format":"standard","builder-category":[],"article-category":[322],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Create Commenting System \u2014 JetEngine | Crocoblock<\/title>\n<meta name=\"description\" content=\"Learn how to create fully customizable comments with the JetEngine plugin for WordPress. Showcase any data in your comment template and design your form for comment submissions.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Create Commenting System \u2014 JetEngine | Crocoblock\" \/>\n<meta property=\"og:description\" content=\"Learn how to create fully customizable comments with the JetEngine plugin for WordPress. Showcase any data in your comment template and design your form for comment submissions.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/\" \/>\n<meta property=\"og:site_name\" content=\"Help Center\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-22T16:44:22+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1024x640.webp\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"16 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/\",\"name\":\"How to Create Commenting System \u2014 JetEngine | Crocoblock\",\"isPartOf\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\"},\"datePublished\":\"2022-11-29T11:29:50+00:00\",\"dateModified\":\"2025-07-22T16:44:22+00:00\",\"description\":\"Learn how to create fully customizable comments with the JetEngine plugin for WordPress. Showcase any data in your comment template and design your form for comment submissions.\",\"breadcrumb\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/crocoblock.com\/knowledge-base\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Articles\",\"item\":\"https:\/\/crocoblock.com\/knowledge-base\/articles\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to Create Custom Commenting System\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/\",\"name\":\"Help Center\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/crocoblock.com\/knowledge-base\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#organization\",\"name\":\"Help Center\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg\",\"contentUrl\":\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg\",\"caption\":\"Help Center\"},\"image\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/\"}}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"How to Create Commenting System \u2014 JetEngine | Crocoblock","description":"Learn how to create fully customizable comments with the JetEngine plugin for WordPress. Showcase any data in your comment template and design your form for comment submissions.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/","og_locale":"en_US","og_type":"article","og_title":"How to Create Commenting System \u2014 JetEngine | Crocoblock","og_description":"Learn how to create fully customizable comments with the JetEngine plugin for WordPress. Showcase any data in your comment template and design your form for comment submissions.","og_url":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/","og_site_name":"Help Center","article_modified_time":"2025-07-22T16:44:22+00:00","og_image":[{"url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/07\/testing-custom-commenting-system-on-the-front-end-1024x640.webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"16 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/","url":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/","name":"How to Create Commenting System \u2014 JetEngine | Crocoblock","isPartOf":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#website"},"datePublished":"2022-11-29T11:29:50+00:00","dateModified":"2025-07-22T16:44:22+00:00","description":"Learn how to create fully customizable comments with the JetEngine plugin for WordPress. Showcase any data in your comment template and design your form for comment submissions.","breadcrumb":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/creating-custom-commenting-system\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/crocoblock.com\/knowledge-base\/"},{"@type":"ListItem","position":2,"name":"Articles","item":"https:\/\/crocoblock.com\/knowledge-base\/articles\/"},{"@type":"ListItem","position":3,"name":"How to Create Custom Commenting System"}]},{"@type":"WebSite","@id":"https:\/\/crocoblock.com\/knowledge-base\/#website","url":"https:\/\/crocoblock.com\/knowledge-base\/","name":"Help Center","description":"","publisher":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/crocoblock.com\/knowledge-base\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/crocoblock.com\/knowledge-base\/#organization","name":"Help Center","url":"https:\/\/crocoblock.com\/knowledge-base\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/","url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg","contentUrl":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2025\/04\/invert-crocoblock-logo.svg","caption":"Help Center"},"image":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#\/schema\/logo\/image\/"}}]}},"_links":{"self":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article\/31722"}],"collection":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article"}],"about":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/types\/article"}],"author":[{"embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/users\/20"}],"wp:attachment":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/media?parent=31722"}],"wp:term":[{"taxonomy":"builder-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/builder-category?post=31722"},{"taxonomy":"article-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article-category?post=31722"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}