{"id":42719,"date":"2023-12-13T14:04:05","date_gmt":"2023-12-13T14:04:05","guid":{"rendered":"https:\/\/crocoblock.com\/knowledge-base\/?post_type=article&#038;p=42719"},"modified":"2024-01-17T17:08:21","modified_gmt":"2024-01-17T17:08:21","slug":"how-to-allow-users-to-add-portfolio","status":"publish","type":"article","link":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/","title":{"rendered":"How to Allow Users to Add Portfolio With the Front-End Form"},"content":{"rendered":"\n<p>If you want to create a job board website to allow users to find suitable vacancies and publish their resumes, you can also allow them to publish their portfolios.<\/p>\n\n\n\n<p>In this tutorial, we will show how to allow users to add, edit, and delete portfolios on the Account page and how to display them on the Profile page.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-portfolio-custom-content-type\">Create a Portfolio Custom Content Type<\/h2>\n\n\n\n<p>For portfolios, we recommend creating a separate <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/custom-content-type\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Custom Content Type<\/strong><\/a>. When you create a new CCT, you also create a new SQL table where the items are stored. It\u2019s useful when you want to allow multiple users to upload their portfolios. If portfolio items are in a separate database table, the website won\u2019t slow down.<\/p>\n\n\n\n<p>Proceed to the <strong><em>JetEngine &gt; JetEngine <\/em><\/strong>tab and enable the <strong>Custom Content Types <\/strong>toggle in the <strong>Default Modules <\/strong>tab.<\/p>\n\n\n\n<p>Then, go to the <strong><em>JetEngine &gt; Custom Content Types <\/em><\/strong>tab and hit the \u201c<strong>Add New<\/strong>\u201d<strong> <\/strong>button.<\/p>\n\n\n\n<p>In the <strong>General Settings<\/strong>, the <strong>Name <\/strong>field must be filled in. After entering the name, the <strong>Slug <\/strong>and <strong>DB Table Name <\/strong>will be generated automatically.&nbsp;<\/p>\n\n\n\n<p>The other options can be set according to your needs.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type.webp\" alt=\"portfolio custom content type\" class=\"wp-image-42732\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>You can add <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/meta-field-types-overview\/\"><strong>custom meta fields<\/strong><\/a> to your CCT in the <strong>Fields <\/strong>tab.<\/p>\n\n\n\n<p>For example, we added four fields: <strong>Work name<\/strong> text field, <strong>Media <\/strong>media field for a picture, <strong>Work link<\/strong> text field, and <strong>Work description<\/strong> textarea field.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields.webp\" alt=\"CCT custom meta fields\" class=\"wp-image-42731\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/cct-custom-meta-fields-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Also, you can decide what values from the CCT fields can be shown in the CCT item list on the backend by enabling the dedicated toggles in the <strong>Admin Columns <\/strong>tab.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns.webp\" alt=\"CCT admin columns\" class=\"wp-image-42730\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/CCT-admin-columns-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>After customizing the CCT, hit the \u201c<strong>Add\/Update<\/strong>\u201d button.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-form-for-adding-cct-items\">Create a Form for Adding CCT Items<\/h2>\n\n\n\n<p>After creating the Custom Content Type, you can click the \u201c<strong>Create new form<\/strong>\u201d button. This feature generates a front-end form that allows users to create CCT items.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items.webp\" alt=\"create a new front-end form for CCT items\" class=\"wp-image-42733\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/create-a-new-front-end-form-for-CCT-items-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>After clicking the button, you will be redirected to the editing page of the <strong><a href=\"https:\/\/jetformbuilder.com\/features\/creating-a-form\/\" target=\"_blank\" rel=\"noreferrer noopener\">created form<\/a><\/strong>.<\/p>\n\n\n\n<p>The form contains fields with the same labels, names, and types as the CCT custom meta fields.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields.webp\" alt=\"form fields\" class=\"wp-image-42737\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/form-fields-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>To make a field mandatory, hit the <strong>asterisk<\/strong> icon next to it. After that, if a user doesn\u2019t fill in the field, the form cannot be submitted. More about the form settings you can read <strong><a href=\"https:\/\/jetformbuilder.com\/features\/form-settings\/\" target=\"_blank\" rel=\"noreferrer noopener\">here<\/a><\/strong>. <\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required.webp\" alt=\"making form field required\" class=\"wp-image-42743\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/making-form-field-required-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>If the form contains the <strong><a href=\"https:\/\/jetformbuilder.com\/features\/media-field\/\" target=\"_blank\" rel=\"noreferrer noopener\">Media Field<\/a> <\/strong>blocks, proceed to the <strong>Block <\/strong>settings tab and open the <strong>Field <\/strong>tab. Here, enable the <strong>Insert attachment<\/strong> toggle and set the <strong>FIELD VALUE<\/strong> according to the <strong>Media<\/strong> meta field settings. For example, we selected the &#8220;Media ID&#8221; <strong>Value format <\/strong>for the meta field, so we set the &#8220;Attachment ID&#8221; <strong>FIELD VALUE <\/strong>for the form field.  Without these settings, users cannot add files via the form. Also, you can set the <strong>User access<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment.webp\" alt=\"media field insert attachment\" class=\"wp-image-42761\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/media-field-insert-attachment-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>In the <strong><em>JetForm &gt; <a href=\"https:\/\/jetformbuilder.com\/features\/post-submit-action-controls-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\">Post Submit Actions<\/a> <\/em><\/strong>tab, the \u201cInsert\/Update Custom Content Type Item\u201d action is set by default.<\/p>\n\n\n\n<p>Click on the <strong>pencil icon to<\/strong> open the settings pop-up.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action.webp\" alt=\"Insert Update Custom Content Type Item Post Submit Action\" class=\"wp-image-42738\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/Insert-Update-Custom-Content-Type-Item-Post-Submit-Action-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>The <strong>Edit Action <\/strong>pop-up contains such settings:<\/p>\n\n\n\n<ul>\n<li><strong>CONTENT TYPE<\/strong>. The recently created \u201cPortfolio\u201d CCT is set here by default;<\/li>\n\n\n\n<li><strong>I<\/strong><strong>TEM STATUS<\/strong>. Here, you can decide whether an item will obtain \u201cDraft\u201d or \u201cPublish\u201d status after a user submits the form;<\/li>\n\n\n\n<li><strong>F<\/strong><strong>IELDS MAP<\/strong>. These settings show the connection of the form fields with the CCT meta fields. After a user fills in the form fields and clicks the \u201c<strong>Submit<\/strong>\u201d button, the CCT item will be created with the corresponding values in the meta fields;<\/li>\n\n\n\n<li><strong>D<\/strong><strong>EFAULT SETTINGS<\/strong>. Here, you can define values for the CCT default fields.<\/li>\n<\/ul>\n\n\n\n<p>If you changed any <strong>Post Submit Action<\/strong> settings, hit the \u201c<strong>Update<\/strong>\u201d button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings.webp\" alt=\"post-submit action settings\" class=\"wp-image-42740\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/post-submit-action-settings-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>To redirect users to the Account page after submitting the form, click the \u201c+ New Action\u201d button, pick the \u201c<a href=\"https:\/\/jetformbuilder.com\/features\/redirect-to-page\/\" target=\"_blank\" rel=\"noreferrer noopener\">Redirect to Page<\/a>\u201d <strong>Post Submit Action<\/strong>, and push the <strong>pencil <\/strong>icon.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action.webp\" alt=\"redirect to page post submit action\" class=\"wp-image-42746\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-page-post-submit-action-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>In the <strong>Edit Action <\/strong>pop-up, set the \u201cStatic Page\u201d option for the <strong>Redirect to <\/strong>field, and from the <strong>Select page <\/strong>drop-down menu, pick \u201cAccount.\u201d Then, hit the \u201c<strong>Update<\/strong>\u201d button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-the-page-action-settings.webp\" alt=\"redirect to the page action settings\" class=\"wp-image-42747\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-the-page-action-settings.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-the-page-action-settings-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-the-page-action-settings-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-the-page-action-settings-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-the-page-action-settings-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/redirect-to-the-page-action-settings-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/div>\n\n\n\n<p>You may edit the form according to your preferences. For example, you can add a custom text with the <strong>Heading <\/strong>block. After that, push the \u201c<strong>Update<\/strong>\u201d button to save the changes for the form.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form.webp\" alt=\"adding custom text with the heading block to the form\" class=\"wp-image-42741\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-custom-text-with-the-heading-block-to-the-form-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-form-for-editing-cct-items\">Create a Form for Editing CCT Items<\/h2>\n\n\n\n<p>Proceed to the <strong><em>JetFormBuilder &gt; Forms<\/em><\/strong> tab and click the form\u2019s &#8220;<strong><a href=\"https:\/\/jetformbuilder.com\/features\/duplicating-and-importing-form\/\" target=\"_blank\" rel=\"noreferrer noopener\">Duplicate<\/a><\/strong>&#8221; button to add items.<\/p>\n\n\n\n<div class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"693\" height=\"848\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dublicate-the-jetformbuilder-form.webp\" alt=\"duplicate the jetformbuilder form\" class=\"wp-image-42736\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dublicate-the-jetformbuilder-form.webp 693w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dublicate-the-jetformbuilder-form-245x300.webp 245w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dublicate-the-jetformbuilder-form-600x734.webp 600w\" sizes=\"(max-width: 693px) 100vw, 693px\" \/><\/div>\n\n\n\n<p>Rename the form and insert the <a href=\"https:\/\/jetformbuilder.com\/features\/hidden-field\/\"><strong>Hidden Field<\/strong><\/a>. Change the <strong>Form field name<\/strong> and set the \u201cManual Input\u201d <strong>Field Value<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image aligncenter size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"760\" height=\"609\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-field-name-and-value.webp\" alt=\"hidden field name and value\" class=\"wp-image-42742\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-field-name-and-value.webp 760w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-field-name-and-value-300x240.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-field-name-and-value-600x481.webp 600w\" sizes=\"(max-width: 760px) 100vw, 760px\" \/><\/div>\n\n\n\n<p>In the <strong>Block <\/strong>section, click the <strong>coin-stack<\/strong> icon above the <strong>DEFAULT VALUE<\/strong> field.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field.webp\" alt=\"dynamic value for the hidden field\" class=\"wp-image-42757\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-value-for-the-hidden-field-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>In the <strong>Edit Preset <\/strong>pop-up, pick the \u201cCustom Content Type\u201d <strong>Source<\/strong>, <strong>Get Item ID from <\/strong>\u201cCurrent post,\u201d and \u201cItem ID\u201d <strong>CCT value<\/strong>. Then, press the \u201c<strong>Update<\/strong>\u201d button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID.webp\" alt=\"preset with the CCT item ID\" class=\"wp-image-42764\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-with-the-CCT-item-ID-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Other fields in the form that replicate the CCT meta fields don\u2019t need to be changed.<\/p>\n\n\n\n<p>Head to the <strong><em>JetForm &gt; Post Submit Actions<\/em><\/strong><strong> <\/strong>tab and click the <strong>pencil<\/strong> icon under the \u201cInsert\/Update Custom Content Type Item\u201d action.<\/p>\n\n\n\n<p>In the <strong>Edit Action <\/strong>tab, set the \u201cItem ID (will update the item)\u201d option for the <strong>Hidden Field<\/strong> with the CCT item ID. Then, hit the \u201c<strong>Update<\/strong>\u201d<strong> <\/strong>button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items.webp\" alt=\"editing post submit action for updating CCT items\" class=\"wp-image-42760\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/editing-post-submit-action-for-updating-CCT-items-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Then, unfold the <strong>Preset Settings <\/strong>tab and hit the <strong>Enable<\/strong> toggle. Select the \u201cCustom Content Type\u201d <strong>SOURCE <\/strong>and <strong>GET ITEM ID FROM <\/strong>\u201cCurrent Post.\u201d Under that, you will see the list of the fields that you added to the form. Each has a select field underneath, where you can choose a CCT meta field to connect to a form field. When users edit the item with the form, the preset will put the meta field data from the current CCT item into the form fields, so users won\u2019t need to fill in fields again to change the item content.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form.webp\" alt=\"preset settings for the editing form\" class=\"wp-image-42763\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/preset-settings-for-the-editing-form-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Press the \u201c<strong>Update<\/strong>\u201d button to save the form settings.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"place-the-forms-in-popups\">Place the Forms in Pop-Ups<\/h2>\n\n\n\n<p>With the <a href=\"https:\/\/crocoblock.com\/plugins\/jetpopup\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>JetPopup<\/em><\/a> plugin, you can create two pop-ups that can be attached to the buttons.<\/p>\n\n\n\n<p>We will create one pop-up for adding and another for editing CCT items.<\/p>\n\n\n\n<p>Head to the <strong><em>JetPopup &gt; Create New Popup <\/em><\/strong>tab. In the <strong>Create a Popup <\/strong>window, select the <strong>Content Type <\/strong>(Elementor or Block editor), enter the pop-up <strong>Name<\/strong>, and <strong>Choose Preset<\/strong>. Then, hit the \u201c<strong>Create<\/strong>\u201d<strong> <\/strong>button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation.webp\" alt=\"new pop-up creation\" class=\"wp-image-42744\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/new-pop-up-creation-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Place the <strong>JetForm <\/strong>widget or <strong>Form <\/strong>block on the editing page. Open the <strong>Choose Form<\/strong> drop-down menu and pick a form you created for adding the CCT items (portfolios).<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing.webp\" alt=\"pop-up editing\" class=\"wp-image-42745\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-editing-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Customize the form and pop-up settings as preferred and hit the \u201c<strong>Update<\/strong>\u201d<strong> <\/strong>button.<\/p>\n\n\n\n<p>To learn more about pop-up settings, check the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetpopup\/how-to-create-a-new-popup-template-from-scratch-based-on-jetpopup\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Create a New Popup Template in Elementor<\/strong><\/a> and <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetpopup\/how-to-create-popup-in-gutenberg\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Create Popup in Gutenberg<\/strong><\/a> tutorials.<\/p>\n\n\n\n<p>Return to the <strong><em>JetPopup &gt; Create New Popup <\/em><\/strong>tab and create another pop-up.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"618\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-1024x618.webp\" alt=\"edit portfolio pop-up\" class=\"wp-image-42755\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-600x362.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Place the <strong>JetForm <\/strong>widget or <strong>Form <\/strong>block and set the form for editing CCT items (portfolios).&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form.webp\" alt=\"edit portfolio pop-up with the form\" class=\"wp-image-42759\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/edit-portfolio-pop-up-with-the-form-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Click the <strong>gear <\/strong>icon to open the pop-up settings and enable the <strong>Loading content with Ajax <\/strong>and <strong>Force Loading<\/strong> toggles. The form preset won\u2019t work in the pop-up without those enabled options.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option.webp\" alt=\"pop-up force loading option\" class=\"wp-image-42762\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-force-loading-option-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Customize the pop-up and press the \u201c<strong>Update<\/strong>\u201d button.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-cct-query\">Create a CCT Query<\/h2>\n\n\n\n<p>To display only portfolios of the queried user on the Profile page, we need to create a custom query. Head to the <strong><em>JetEngine &gt; Query Builder <\/em><\/strong>tab and push the \u201c<strong>Add New<\/strong>\u201d button.<\/p>\n\n\n\n<p>Enter the query <strong>Name <\/strong>and select the \u201cCustom Content Type Query\u201d option from the <strong>Query Type <\/strong>drop-down menu.<\/p>\n\n\n\n<p>In the <strong>Content Types Query<\/strong> settings tab, select the needed CCT from the <strong>From Content Type <\/strong>drop-down list (\u201cPortfolio\u201d in our case). You can set the <strong>Number <\/strong>of the displayed items in the <strong>Listing Grid <\/strong>(we will create a <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-template-in-elementor-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing template<\/strong><\/a> for it later). Also, you can select the \u201cPublish\u201d <strong>Status <\/strong>to show only those items that are published.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user.webp\" alt=\"custom query to display portfolios for queried user\" class=\"wp-image-42735\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-to-display-portfolios-for-quired-user-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>In the <strong>Query <\/strong>tab, hit the \u201c<strong>Add New<\/strong>\u201dbutton. Set the \u201cItem Author\u201d <strong>Field<\/strong> and \u201cEqual (=)\u201d <strong>Compare<\/strong>. Click the <strong>coin-stack<\/strong> icon near the <strong>Value <\/strong>field and pick the \u201cQueried user ID\u201d from the drop-down menu. Finally, pick the \u201cNumeric\u201d <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\/2023\/11\/custom-content-type-query-settings.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-content-type-query-settings.webp\" alt=\"custom content type query settings\" class=\"wp-image-42734\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-content-type-query-settings.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-content-type-query-settings-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-content-type-query-settings-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-content-type-query-settings-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-content-type-query-settings-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-content-type-query-settings-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>The query is ready, and you can hit the \u201c<strong>Add\/Update Query<\/strong>\u201dbutton.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"create-a-listing-template\">Create a Listing Template<\/h2>\n\n\n\n<p>To display portfolios in the listing grid on the user\u2019s Account and Profile pages, it\u2019s necessary to create a listing template.<\/p>\n\n\n\n<p>Go to the <strong><em>JetEngine &gt; Listings <\/em><\/strong>tab and press the \u201c<strong>Add New<\/strong>\u201d<strong> <\/strong>button.<\/p>\n\n\n\n<p>In the <strong>Setup Listing Item <\/strong>pop-up, select the \u201cCustom Content Type\u201d <strong>Listing Source<\/strong>, choose the needed CCT in the <strong>From content type <\/strong>field (e.g., \u201cPortfolio\u201d), enter the <strong>Listing Item name<\/strong>, pick the \u201cElementor\u201d <strong>Listing view<\/strong>, and click the \u201c<strong>Create Listing Item<\/strong>\u201d<strong> <\/strong>button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio.webp\" alt=\"listing template for portfolio\" class=\"wp-image-42739\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-template-for-portfolio-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>On the Elementor editing page, place the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/jetengine-dynamic-image-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Image <\/strong>widget<\/a> to display the portfolio picture. As the <strong>Source<\/strong>, pick the <strong>Media <\/strong>meta field from the \u201cPortfolio\u201d CCT.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio.webp\" alt=\"dynamic image widget for displaying portfolio\" class=\"wp-image-42753\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-image-widget-for-displaying-portfolio-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>To display the portfolio name, drag-n-drop the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/dynamic-field-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Field <\/strong>widget<\/a>. We chose the \u201cPost\/Term\/User\/Object Data\u201d option as the <strong>Source<\/strong> and selected the \u201cWork name\u201d CCT <strong>Text <\/strong>meta field.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name.webp\" alt=\"dynamic field widget for displaying portfolio name\" class=\"wp-image-42768\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-name-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>We placed another <strong>Dynamic Field <\/strong>widget, chose the \u201cPost\/Term\/User\/Object Data\u201d option as the <strong>Source<\/strong>, and selected the \u201cWork description\u201d CCT <strong>Text <\/strong>meta field to display portfolio description.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description.webp\" alt=\"dynamic field widget for displaying portfolio description\" class=\"wp-image-42767\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>To hide part of the description text, we enabled the <strong>Filter field output <\/strong>toggle and selected the \u201cTrim string by charts or words\u201d <strong>Callback<\/strong>. Be aware that the callback is available only after you enable the <strong>Trim string callback<\/strong> toggle in the <strong><em>JetEngine &gt; JetEngine &gt; Modules &gt; External Modules<\/em><\/strong> tab. With this callback, you can set the number of words or charts displayed in the <strong>Dynamic Field<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback.webp\" alt=\"dynamic field widget for displaying portfolio description with callback\" class=\"wp-image-42774\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-field-widget-for-displaying-portfolio-description-with-callback-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>We added the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/jetengine-dynamic-link-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Dynamic Link <\/strong>widget<\/a> and picked the \u201cWork link\u201d CCT <strong>Text <\/strong>meta field to display the link to the portfolio.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link.webp\" alt=\"dynamic link widget for displaying portfolio link\" class=\"wp-image-42777\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-displaying-portfolio-link-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>We drag-n-dropped another <strong>Dynamic Link <\/strong>button by clicking on which user can delete the portfolio. As the <strong>Source<\/strong>, we picked the \u201cDelete current post link\u201d option and filled in the <strong>Confirm deletion message <\/strong>field.&nbsp;<\/p>\n\n\n\n<p>In the <strong>Redirect after delete <\/strong>field, you can enter the Account page URL, so the user will be redirected to the Account page after deleting the portfolio.<\/p>\n\n\n\n<p>You can change the <strong>Label <\/strong>text. We wanted to display the icon only, so we deleted it.<\/p>\n\n\n\n<p>Enable the <strong>Add Query Arguments <\/strong>toggle and enter the \u201c_cct_id=%current_id%\u201d macro.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post.webp\" alt=\"dynamic link widget for deleting the current post\" class=\"wp-image-42776\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-widget-for-deleting-the-current-post-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Also, we set the \u201cTrash\u201d <strong>Field Icon <\/strong>and \u201cEnd\u201d <strong>Alignment<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image text-center size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"364\" height=\"918\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-icon-settings.webp\" alt=\"dynamic link icon settings\" class=\"wp-image-42754\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-icon-settings.webp 364w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-icon-settings-119x300.webp 119w\" sizes=\"(max-width: 364px) 100vw, 364px\" \/><\/figure>\n\n\n\n<p>Proceed to the <strong>Advanced <\/strong>settings tab of the widget, unfold the <strong>Dynamic Visibility <\/strong>tab, and hit the <strong>Enable<\/strong> toggle. Set the \u201cShow element if condition met\u201d <strong>Visibility condition type<\/strong> and \u201cIs Profile Page\u201d (from the <strong>JetEngine specific<\/strong> section) <strong>Condition<\/strong>. In the <strong>Profile Page<\/strong> field, pick the Account subpage that shows the user&#8217;s info and where you will place the listing grid with portfolios.<\/p>\n\n\n\n<p>Such dynamic visibility settings show the <strong>Dynamic Link <\/strong>for deleting a portfolio only on the user Account page. On the Profile page, it will be invisible.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings.webp\" alt=\"dynamic link dynamic visibility settings\" class=\"wp-image-42775\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/dynamic-link-dynamic-visibility-settings-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Now, you can add a button for triggering the pop-up with the editing portfolio form.<\/p>\n\n\n\n<p>You can add the Elementor or the <a href=\"https:\/\/crocoblock.com\/plugins\/jetelements\/\" target=\"_blank\" rel=\"noreferrer noopener\"><em>JetElements<\/em><\/a><em> <\/em><strong>Button<\/strong> widget. To learn more about the latter, you can read the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/jetelements\/jetelements-button-widget-how-to-add-a-button-widget-to-your-website\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>How to Add a Button Widget with Custom Text and Links<\/strong><\/a> tutorial.<\/p>\n\n\n\n<p>Add the <strong>Button <\/strong>to the editing page and customize its <strong>Content <\/strong>and <strong>Style<\/strong> settings according to your needs.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin.webp\" alt=\"button widget from the JetElements plugin\" class=\"wp-image-42773\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-from-the-JetElements-plugin-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Then, go to the <strong>Advanced <\/strong>settings tab and open the <strong>JetPopup <\/strong>tab. Set the pop-up with the editing portfolio form in the <strong>Attached Popup<\/strong> field, pick the \u201cClick On Widget\u201d <strong>Trigger Type<\/strong>, and enable the <strong>Jet Engine Listing popup <\/strong>toggle.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"618\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button-1024x618.webp\" alt=\"attached pop-up to the button\" class=\"wp-image-42772\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button-600x362.webp 600w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-to-the-button.webp 1824w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/a><\/div>\n\n\n\n<p>Unfold the <strong>Dynamic Visibility <\/strong>tab and hit the <strong>Enable<\/strong> the toggle. Set the \u201cShow element if condition met\u201d <strong>Visibility condition type<\/strong> and \u201cIs Profile Page\u201d (from the <strong>JetEngine specific<\/strong> section) <strong>Condition<\/strong>. In the <strong>Profile Page<\/strong> field, pick the Account subpage that shows the user&#8217;s info.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings.webp\" alt=\"button widget visibility settings\" class=\"wp-image-42778\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-widget-visibility-settings-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Finish customizing the Listing item and hit the \u201c<strong>Update<\/strong>\u201dbutton.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"place-the-listing-grid-on-the-account-page\">Place the Listing Grid on the Account Page<\/h2>\n\n\n\n<p>Click to edit the Account subpage template with the user information.<\/p>\n\n\n\n<p>On the editing page, we placed the <strong>Heading <\/strong>widget with the \u201cPortfolio\u201d text.<\/p>\n\n\n\n<p>Then, we added a button for triggering the pop-up with the adding portfolio form.<\/p>\n\n\n\n<p>To add the button, drag-n-drop the Elementor <strong>Button <\/strong>widget or the <em>JetElements <\/em><strong>Button<\/strong> widget and customize its <strong>Content <\/strong>and <strong>Style<\/strong> settings according to your needs.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page.webp\" alt=\"jetelements button widget on the account page\" class=\"wp-image-42751\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/button-jetelements-widget-on-the-account-page-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Then, go to the <strong>Advanced <\/strong>settings tab and open the <strong>JetPopup <\/strong>tab. Set the pop-up with the adding portfolio form in the <strong>Attached Popup<\/strong> field and pick the \u201cClick On Widget\u201d <strong>Trigger Type<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button.webp\" alt=\"attached pop-up with the adding portfolio form to the button\" class=\"wp-image-42750\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/attached-pop-up-with-the-adding-portfolio-form-to-the-button-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Place the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-grid-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Grid <\/strong>widget<\/a> and select the recently created <strong>Listing<\/strong> item. According to the <strong>Dynamic Visibility <\/strong>settings, the <strong>Listing Grid<\/strong> doesn\u2019t show the \u201c<strong>Edit<\/strong>\u201d and \u201c<strong>Delete<\/strong>\u201dbuttons yet, but they will be visible on the Account page 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\/2023\/11\/listing-grid-widget-to-display-portfolios.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-to-display-portfolios.webp\" alt=\"listing grid widget to display portfolios\" class=\"wp-image-42782\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-to-display-portfolios.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-to-display-portfolios-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-to-display-portfolios-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-to-display-portfolios-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-to-display-portfolios-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-to-display-portfolios-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Unfold the <strong>Custom Query <\/strong>tab and enable the toggle. From the drop-down menu, select the previously created CCT query. Since we haven\u2019t added portfolios yet, the listing grid is empty.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid.webp\" alt=\"custom query for the Listing Grid\" class=\"wp-image-42779\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-query-for-the-Listing-Grid-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Finish customizing the template and hit the <strong>\u201cUpdate\u201d <\/strong>button.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"place-the-listing-grid-on-the-single-user-profile-page\">Place the Listing Grid on the Single User Profile Page<\/h2>\n\n\n\n<p>Click to edit the Single User subpage template with the user information.<\/p>\n\n\n\n<p>On the editing page, we placed the <strong>Heading <\/strong>widget into the <strong>Column <\/strong>of <strong>Inner Section<\/strong> with the \u201cPortfolio\u201d text.<\/p>\n\n\n\n<p>Drag-n-drop the <a href=\"https:\/\/crocoblock.com\/knowledge-base\/features\/listing-grid-widget-overview\/\" target=\"_blank\" rel=\"noreferrer noopener\"><strong>Listing Grid <\/strong>widget<\/a> and select the recently created <strong>Listing<\/strong> item.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page.webp\" alt=\"listing grid widget with portfolio items on the profile page\" class=\"wp-image-42769\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/listing-grid-widget-with-portfolio-items-on-the-profile-page-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Unfold the <strong>Custom Query <\/strong>tab and enable the toggle. From the drop-down menu, select the previously created CCT query.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid.webp\" alt=\"custom CCT query for the Listing Grid\" class=\"wp-image-42765\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/custom-CCT-query-for-the-Listing-Grid-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Also, we opened the <strong>Advanced <\/strong>settings tab of the <strong>Inner Section <\/strong>widget, unfolded the <strong>Dynamic Visibility <\/strong>tab, and enabled the toggle. We selected the \u201cShow element if condition met\u201d <strong>Visibility condition type<\/strong>, \u201cQuery Has Items\u201d <strong>Condition,<\/strong> and set the same CCT query in the <strong>Query to check<\/strong> field. Such settings enable the section display only if a user adds at least one portfolio.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition.webp\" alt=\"query has items dynamic visibility condition\" class=\"wp-image-42771\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/query-has-items-dynamic-visibility-condition-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Finally, hit the \u201c<strong>Update<\/strong>\u201d button.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"check-the-results\">Check the Results<\/h2>\n\n\n\n<p>Open the Account page 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\/2023\/11\/account-page-of-the-user-with-the-employee-role.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/account-page-of-the-user-with-the-employee-role.webp\" alt=\"account page of the user with the employee role\" class=\"wp-image-42748\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/account-page-of-the-user-with-the-employee-role.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/account-page-of-the-user-with-the-employee-role-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/account-page-of-the-user-with-the-employee-role-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/account-page-of-the-user-with-the-employee-role-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/account-page-of-the-user-with-the-employee-role-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/account-page-of-the-user-with-the-employee-role-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>To test a pop-up with the adding portfolio form, we hit the button, and the form appeared.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form.webp\" alt=\"adding portfolio with the front-end form\" class=\"wp-image-42749\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/adding-portfolio-with-the-front-end-form-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Let\u2019s fill in the fields and click the \u201c<strong>Submit<\/strong>\u201d button.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form.webp\" alt=\"publishing a portfolio with the form\" class=\"wp-image-42756\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/publishing-a-portfolio-with-the-form-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>After that, a newly created portfolio item appears in the listing grid.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid.webp\" alt=\"created portfolio item in the listing grid\" class=\"wp-image-42752\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/created-portfolio-item-in-the-listing-grid-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>If we click the \u201c<strong>Edit<\/strong>\u201d button in the listing item, the pop-up with the editing portfolio form shows up. Due to the form preset settings, the form fields are auto-filled with the values from the CCT item meta fields.<\/p>\n\n\n\n<div class=\"wp-block-image size-large\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end.webp\" alt=\"pop-up with editing portfolio form on the front end\" class=\"wp-image-42770\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/pop-up-with-editing-portfolio-form-on-the-front-end-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>We changed the portfolio name and hit the \u201c<strong>Submit<\/strong>\u201d<strong> <\/strong>button. The change was saved and displayed in the listing grid.<\/p>\n\n\n\n<p>If we hit the \u201c<strong>Delete<\/strong>\u201d<strong> <\/strong>button, the notification appears with the confirm deletion message. We can click the \u201c<strong>Ok<\/strong>\u201d<strong> <\/strong>button to delete the item or \u201c<strong>Cancel<\/strong>\u201d<strong> <\/strong>to save it.<\/p>\n\n\n\n<div class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"969\" height=\"891\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleting-portfolio.webp\" alt=\"deleting portfolio\" class=\"wp-image-42766\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleting-portfolio.webp 969w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleting-portfolio-300x276.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleting-portfolio-768x706.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleting-portfolio-600x552.webp 600w\" sizes=\"(max-width: 969px) 100vw, 969px\" \/><\/div>\n\n\n\n<p>We deleted the portfolio, so the listing grid is empty again.&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item.webp\" alt=\"deleted item\" class=\"wp-image-42780\" style=\"width:840px;height:auto\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/deleted-item-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>Now, let\u2019s check the Profile page.<\/p>\n\n\n\n<div class=\"wp-block-image size-large is-resized\"><a href=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility.webp\"><img loading=\"lazy\" decoding=\"async\" width=\"1824\" height=\"1100\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility.webp\" alt=\"hidden section with the dynamic visibility\" class=\"wp-image-42781\" style=\"width:840px;height:auto\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility.webp 1824w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility-300x181.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility-1024x618.webp 1024w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility-768x463.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility-1536x926.webp 1536w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/hidden-section-with-the-dynamic-visibility-600x362.webp 600w\" sizes=\"(max-width: 1824px) 100vw, 1824px\" \/><\/a><\/div>\n\n\n\n<p>When we added a new item from the Account page, the section with a portfolio appeared on the User Profile page. The page doesn\u2019t show the\u201c<strong>Add<\/strong>,\u201d \u201c<strong>Edit<\/strong>,\u201d and \u201c<strong>Delete<\/strong>\u201dbuttons according to the dynamic visibility settings.<\/p>\n\n\n\n<div class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"993\" height=\"772\" src=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-on-the-user-profile-page.webp\" alt=\"portfolio on the user profile page\" class=\"wp-image-42783\" srcset=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-on-the-user-profile-page.webp 993w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-on-the-user-profile-page-300x233.webp 300w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-on-the-user-profile-page-768x597.webp 768w, https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-on-the-user-profile-page-600x466.webp 600w\" sizes=\"(max-width: 993px) 100vw, 993px\" \/><\/div>\n\n\n\n<p>That\u2019s all. Now you know how to allow users to add their portfolio via the front-end <em>JetFormBuilder<\/em> form on the Account page and how to display it on the user\u2019s Profile page using the <em>JetEngine<\/em> WordPress plugin.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Learn how to allow users to add their portfolio via the JetFormBuilder front-end form on the Account page and display it on the user\u2019s Profile page using the JetEngine WordPress plugin.<\/p>\n","protected":false},"author":8,"featured_media":0,"template":"","format":"standard","builder-category":[],"article-category":[402],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v20.9 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to Allow Users to Add Portfolio With the Front-End Form | Crocoblock<\/title>\n<meta name=\"description\" content=\"This tutorial describes how to allow users to add their portfolio via the front-end form on the Account page and how to display it on the user\u2019s Profile page using the JetEngine WordPress plugin.\" \/>\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\/how-to-allow-users-to-add-portfolio\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to Allow Users to Add Portfolio With the Front-End Form | Crocoblock\" \/>\n<meta property=\"og:description\" content=\"This tutorial describes how to allow users to add their portfolio via the front-end form on the Account page and how to display it on the user\u2019s Profile page using the JetEngine WordPress plugin.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/\" \/>\n<meta property=\"og:site_name\" content=\"Help Center\" \/>\n<meta property=\"article:modified_time\" content=\"2024-01-17T17:08:21+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type.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=\"22 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\/how-to-allow-users-to-add-portfolio\/\",\"url\":\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/\",\"name\":\"How to Allow Users to Add Portfolio With the Front-End Form | Crocoblock\",\"isPartOf\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/#website\"},\"datePublished\":\"2023-12-13T14:04:05+00:00\",\"dateModified\":\"2024-01-17T17:08:21+00:00\",\"description\":\"This tutorial describes how to allow users to add their portfolio via the front-end form on the Account page and how to display it on the user\u2019s Profile page using the JetEngine WordPress plugin.\",\"breadcrumb\":{\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/#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 Allow Users to Add Portfolio With the Front-End Form\"}]},{\"@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 Allow Users to Add Portfolio With the Front-End Form | Crocoblock","description":"This tutorial describes how to allow users to add their portfolio via the front-end form on the Account page and how to display it on the user\u2019s Profile page using the JetEngine WordPress plugin.","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\/how-to-allow-users-to-add-portfolio\/","og_locale":"en_US","og_type":"article","og_title":"How to Allow Users to Add Portfolio With the Front-End Form | Crocoblock","og_description":"This tutorial describes how to allow users to add their portfolio via the front-end form on the Account page and how to display it on the user\u2019s Profile page using the JetEngine WordPress plugin.","og_url":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/","og_site_name":"Help Center","article_modified_time":"2024-01-17T17:08:21+00:00","og_image":[{"url":"https:\/\/crocoblock.com\/knowledge-base\/wp-content\/uploads\/2023\/11\/portfolio-custom-content-type.webp"}],"twitter_card":"summary_large_image","twitter_misc":{"Est. reading time":"22 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/","url":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/","name":"How to Allow Users to Add Portfolio With the Front-End Form | Crocoblock","isPartOf":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/#website"},"datePublished":"2023-12-13T14:04:05+00:00","dateModified":"2024-01-17T17:08:21+00:00","description":"This tutorial describes how to allow users to add their portfolio via the front-end form on the Account page and how to display it on the user\u2019s Profile page using the JetEngine WordPress plugin.","breadcrumb":{"@id":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/crocoblock.com\/knowledge-base\/jetengine\/how-to-allow-users-to-add-portfolio\/#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 Allow Users to Add Portfolio With the Front-End Form"}]},{"@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\/42719"}],"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\/8"}],"wp:attachment":[{"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/media?parent=42719"}],"wp:term":[{"taxonomy":"builder-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/builder-category?post=42719"},{"taxonomy":"article-category","embeddable":true,"href":"https:\/\/crocoblock.com\/knowledge-base\/wp-json\/wp\/v2\/article-category?post=42719"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}