{"id":231464,"date":"2025-05-02T15:04:27","date_gmt":"2025-05-02T15:04:27","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/author-profile-blocks\/"},"modified":"2026-05-22T01:16:03","modified_gmt":"2026-05-22T01:16:03","slug":"author-profile-blocks","status":"publish","type":"plugin","link":"https:\/\/azb.wordpress.org\/plugins\/author-profile-blocks\/","author":20002658,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.0","stable_tag":"1.1.0","tested":"6.9.4","requires":"6.0","requires_php":"7.4","requires_plugins":null,"header_name":"Author Profile Blocks","header_author":"Al Amin Ahamed","header_description":"A collection of powerful Gutenberg blocks for showcasing author profiles and team members using WordPress users.","assets_banners_color":"43495c","last_updated":"2026-05-22 01:16:03","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/github.com\/mralaminahamed\/author-profile-blocks","header_author_uri":"https:\/\/github.com\/mralaminahamed","rating":0,"author_block_rating":0,"active_installs":0,"downloads":716,"num_ratings":0,"support_threads":1,"support_threads_resolved":1,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.0.0":{"tag":"1.0.0","author":"mralaminahamed","date":"2025-05-02 15:37:07"},"1.0.1":{"tag":"1.0.1","author":"mralaminahamed","date":"2026-04-21 06:26:37"},"1.0.3":{"tag":"1.0.3","author":"mralaminahamed","date":"2026-05-12 14:06:31"},"1.0.4":{"tag":"1.0.4","author":"mralaminahamed","date":"2026-05-17 10:41:05"},"1.1.0":{"tag":"1.1.0","author":"mralaminahamed","date":"2026-05-22 01:16:03"}},"upgrade_notice":{"1.1.0":"<p>Feature release. Adds Team Member CPT, Department taxonomy, four shortcodes, Author Profile widget, and six new user meta fields. Fully backward compatible \u2014 existing blocks and user data are unchanged.<\/p>","1.0.4":"<p>Security and bug-fix release. Fixes CSS injection, template path traversal, blocks blank on frontend, and carousel init on classic themes. Upgrade recommended for all users.<\/p>","1.0.3":"<p>Refactoring and bug-fix release. Splits the author block base class into focused traits and fixes several frontend rendering issues. Recommended upgrade.<\/p>","1.0.2":"<p>Major feature update. Replaces the legacy PHP settings page with a React\/shadcn admin SPA and migrates all JS to TypeScript. Recommended upgrade.<\/p>","1.0.1":"<p>Bug-fix and polish release. Fixes CSS class selectors and animation timing. Refines the indigo design system. Recommended upgrade.<\/p>","1.0.0":"<p>Initial release \u2014 no upgrade required.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3511419,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-256x256.png":{"filename":"icon-256x256.png","revision":3511419,"resolution":"256x256","location":"assets","locale":"","width":256,"height":256},"icon-512x512.png":{"filename":"icon-512x512.png","revision":3511419,"resolution":"512x512","location":"assets","locale":"","width":512,"height":512}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3511419,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3511419,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{"blueprint.json":{"filename":"blueprint.json","revision":3542977,"resolution":false,"location":"assets","locale":"","contents":"{\"$schema\":\"https:\\\/\\\/playground.wordpress.net\\\/blueprint-schema.json\",\"preferredVersions\":{\"php\":\"8.1\",\"wp\":\"latest\"},\"features\":{\"networking\":false},\"steps\":[{\"step\":\"installPlugin\",\"pluginData\":{\"resource\":\"wordpress.org\\\/plugins\",\"slug\":\"author-profile-blocks\"},\"options\":{\"activate\":true}},{\"step\":\"runPHP\",\"code\":\"<?php\\nrequire '\\\/wordpress\\\/wp-load.php';\\n\\n\\\/\\\/ Create demo WordPress user\\n$user_id = wp_insert_user([\\n    'user_login'   => 'jane-smith',\\n    'user_email'   => 'jane@example.com',\\n    'user_pass'    => wp_generate_password(),\\n    'display_name' => 'Jane Smith',\\n    'description'  => 'Senior product designer with 10 years of experience building digital products. Passionate about accessibility and design systems.',\\n    'role'         => 'author',\\n]);\\n\\nif ( ! is_wp_error( $user_id ) ) {\\n    update_user_meta( $user_id, 'apbl_author_position',    'Senior Product Designer' );\\n    update_user_meta( $user_id, 'apbl_location',           'San Francisco, CA' );\\n    update_user_meta( $user_id, 'apbl_department',         'Design' );\\n    update_user_meta( $user_id, 'apbl_skills',             'Figma, Design Systems, Accessibility, UX Research' );\\n    update_user_meta( $user_id, 'apbl_availability',       'available' );\\n    update_user_meta( $user_id, 'apbl_social_profiles',    serialize([\\n        'twitter'   => 'https:\\\/\\\/twitter.com\\\/janesmith',\\n        'linkedin'  => 'https:\\\/\\\/linkedin.com\\\/in\\\/janesmith',\\n        'website'   => 'https:\\\/\\\/janesmith.design',\\n    ]) );\\n}\\n\\n\\\/\\\/ Create second demo user\\n$user_id_2 = wp_insert_user([\\n    'user_login'   => 'alex-chen',\\n    'user_email'   => 'alex@example.com',\\n    'user_pass'    => wp_generate_password(),\\n    'display_name' => 'Alex Chen',\\n    'description'  => 'Full-stack engineer specialising in WordPress block development and REST APIs. Open source contributor.',\\n    'role'         => 'author',\\n]);\\n\\nif ( ! is_wp_error( $user_id_2 ) ) {\\n    update_user_meta( $user_id_2, 'apbl_author_position',  'Lead Engineer' );\\n    update_user_meta( $user_id_2, 'apbl_location',         'New York, NY' );\\n    update_user_meta( $user_id_2, 'apbl_department',       'Engineering' );\\n    update_user_meta( $user_id_2, 'apbl_skills',           'PHP, React, TypeScript, WordPress Blocks' );\\n    update_user_meta( $user_id_2, 'apbl_availability',     'busy' );\\n    update_user_meta( $user_id_2, 'apbl_social_profiles',  serialize([\\n        'twitter'  => 'https:\\\/\\\/twitter.com\\\/alexchen',\\n        'github'   => 'https:\\\/\\\/github.com\\\/alexchen',\\n        'linkedin' => 'https:\\\/\\\/linkedin.com\\\/in\\\/alexchen',\\n    ]) );\\n}\\n\\n\\\/\\\/ Create Team Member CPT entries\\n$tm_1 = wp_insert_post([\\n    'post_type'    => 'apbl_team_member',\\n    'post_title'   => 'Maria Garcia',\\n    'post_content' => 'Marketing strategist and content lead with a background in brand communications and growth marketing.',\\n    'post_status'  => 'publish',\\n]);\\n\\nif ( $tm_1 ) {\\n    update_post_meta( $tm_1, 'apbl_tm_position',        'Head of Marketing' );\\n    update_post_meta( $tm_1, 'apbl_tm_social_profiles', serialize([\\n        'linkedin'  => 'https:\\\/\\\/linkedin.com\\\/in\\\/mariagarcia',\\n        'twitter'   => 'https:\\\/\\\/twitter.com\\\/mariagarcia',\\n    ]) );\\n    $dept = wp_insert_term( 'Marketing', 'apbl_department' );\\n    if ( ! is_wp_error( $dept ) ) {\\n        wp_set_object_terms( $tm_1, (int) $dept['term_id'], 'apbl_department' );\\n    }\\n}\\n\\n$tm_2 = wp_insert_post([\\n    'post_type'    => 'apbl_team_member',\\n    'post_title'   => 'David Park',\\n    'post_content' => 'Operations lead focused on scaling teams and building efficient cross-functional processes.',\\n    'post_status'  => 'publish',\\n]);\\n\\nif ( $tm_2 ) {\\n    update_post_meta( $tm_2, 'apbl_tm_position',        'VP of Operations' );\\n    update_post_meta( $tm_2, 'apbl_tm_social_profiles', serialize([\\n        'linkedin' => 'https:\\\/\\\/linkedin.com\\\/in\\\/davidpark',\\n    ]) );\\n    $ops_dept = wp_insert_term( 'Operations', 'apbl_department' );\\n    if ( ! is_wp_error( $ops_dept ) ) {\\n        wp_set_object_terms( $tm_2, (int) $ops_dept['term_id'], 'apbl_department' );\\n    }\\n}\\n\\n\\\/\\\/ Create demo page with blocks\\n$admin = get_users(['role' => 'administrator', 'number' => 1]);\\n$admin_id = $admin ? $admin[0]->ID : 1;\\n\\n$page_content = '<!-- wp:heading -->\\n<h2 class=\\\"wp-block-heading\\\">Author Profile Block<\\\/h2>\\n<!-- \\\/wp:heading -->\\n\\n<!-- wp:paragraph -->\\n<p>Single author displayed with the default card style.<\\\/p>\\n<!-- \\\/wp:paragraph -->\\n\\n<!-- wp:author-profile-blocks\\\/author-profile {\\\"authorId\\\":' . $user_id . ',\\\"showBio\\\":true,\\\"showSocialProfiles\\\":true} \\\/-->\\n\\n<!-- wp:spacer {\\\"height\\\":\\\"48px\\\"} -->\\n<div style=\\\"height:48px\\\" aria-hidden=\\\"true\\\" class=\\\"wp-block-spacer\\\"><\\\/div>\\n<!-- \\\/wp:spacer -->\\n\\n<!-- wp:heading -->\\n<h2 class=\\\"wp-block-heading\\\">Author Grid Block<\\\/h2>\\n<!-- \\\/wp:heading -->\\n\\n<!-- wp:paragraph -->\\n<p>Multiple authors displayed in a responsive 3-column grid.<\\\/p>\\n<!-- \\\/wp:paragraph -->\\n\\n<!-- wp:author-profile-blocks\\\/author-grid {\\\"columns\\\":3,\\\"showSocialProfiles\\\":true} \\\/-->\\n\\n<!-- wp:spacer {\\\"height\\\":\\\"48px\\\"} -->\\n<div style=\\\"height:48px\\\" aria-hidden=\\\"true\\\" class=\\\"wp-block-spacer\\\"><\\\/div>\\n<!-- \\\/wp:spacer -->\\n\\n<!-- wp:heading -->\\n<h2 class=\\\"wp-block-heading\\\">Author List Block<\\\/h2>\\n<!-- \\\/wp:heading -->\\n\\n<!-- wp:paragraph -->\\n<p>Authors displayed in the detailed list style.<\\\/p>\\n<!-- \\\/wp:paragraph -->\\n\\n<!-- wp:author-profile-blocks\\\/author-list {\\\"style\\\":\\\"detailed\\\"} \\\/-->\\n\\n<!-- wp:spacer {\\\"height\\\":\\\"48px\\\"} -->\\n<div style=\\\"height:48px\\\" aria-hidden=\\\"true\\\" class=\\\"wp-block-spacer\\\"><\\\/div>\\n<!-- \\\/wp:spacer -->\\n\\n<!-- wp:heading -->\\n<h2 class=\\\"wp-block-heading\\\">Author Carousel Block<\\\/h2>\\n<!-- \\\/wp:heading -->\\n\\n<!-- wp:paragraph -->\\n<p>Authors displayed in a scrollable carousel.<\\\/p>\\n<!-- \\\/wp:paragraph -->\\n\\n<!-- wp:author-profile-blocks\\\/author-carousel {\\\"autoplay\\\":false,\\\"style\\\":\\\"modern\\\"} \\\/-->\\n\\n<!-- wp:spacer {\\\"height\\\":\\\"48px\\\"} -->\\n<div style=\\\"height:48px\\\" aria-hidden=\\\"true\\\" class=\\\"wp-block-spacer\\\"><\\\/div>\\n<!-- \\\/wp:spacer -->\\n\\n<!-- wp:heading -->\\n<h2 class=\\\"wp-block-heading\\\">Shortcode Examples<\\\/h2>\\n<!-- \\\/wp:heading -->\\n\\n<!-- wp:shortcode -->\\n[apbl_grid columns=\\\"2\\\" number=\\\"4\\\" style=\\\"card\\\"]\\n<!-- \\\/wp:shortcode -->';\\n\\n$page_id = wp_insert_post([\\n    'post_type'    => 'page',\\n    'post_title'   => 'Author Profile Blocks Demo',\\n    'post_content' => $page_content,\\n    'post_status'  => 'publish',\\n    'post_author'  => $admin_id,\\n]);\\n\\nif ( $page_id ) {\\n    update_option( 'page_on_front', $page_id );\\n    update_option( 'show_on_front', 'page' );\\n}\\n\"},{\"step\":\"login\",\"username\":\"admin\",\"password\":\"password\"},{\"step\":\"setSiteOptions\",\"options\":{\"blogname\":\"Author Profile Blocks Demo\",\"blogdescription\":\"Live preview of the Author Profile Blocks plugin\"}}]}"}},"all_blocks":{"author-profile-blocks\/author-grid":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"author-profile-blocks\/author-grid","version":"1.0.4","title":"Author Grid","category":"widgets","icon":"grid-view","description":"Display multiple authors in a responsive grid layout with customizable options.","attributes":{"authorIds":{"type":"array","default":[]},"columns":{"type":"number","default":3},"showImage":{"type":"boolean","default":true},"showEmail":{"type":"boolean","default":true},"showDescription":{"type":"boolean","default":true},"showPosition":{"type":"boolean","default":true},"showRegisteredDate":{"type":"boolean","default":true},"showSocial":{"type":"boolean","default":true},"layout":{"type":"string","default":"card"},"backgroundColor":{"type":"string","default":"#ffffff"},"textAlign":{"type":"string","default":"center"},"padding":{"type":"number","default":20},"itemSpacing":{"type":"number","default":20},"enableShadow":{"type":"boolean","default":true},"enableBorder":{"type":"boolean","default":false},"borderColor":{"type":"string","default":"#e0e0e0"},"borderWidth":{"type":"number","default":1},"enableRounded":{"type":"boolean","default":true},"maxAuthors":{"type":"number","default":6},"authorRole":{"type":"string","default":""},"layoutPreset":{"type":"string","default":"default"},"animationType":{"type":"string","default":"none"},"animationDuration":{"type":"number","default":300},"hoverEffect":{"type":"string","default":"none"},"customCssClass":{"type":"string","default":""},"googleFont":{"type":"string","default":""},"fontSizeUnit":{"type":"string","default":"px"},"gradientBackground":{"type":"boolean","default":false},"gradientStartColor":{"type":"string","default":"#ffffff"},"gradientEndColor":{"type":"string","default":"#f8f9fa"},"gradientDirection":{"type":"string","default":"to bottom"},"transformScale":{"type":"number","default":1},"transformRotate":{"type":"number","default":0},"filterBrightness":{"type":"number","default":100},"filterContrast":{"type":"number","default":100},"filterSaturate":{"type":"number","default":100},"lazyLoad":{"type":"boolean","default":true},"contentTabs":{"type":"boolean","default":false},"tabLabels":{"type":"object","default":{"bio":"Bio","contact":"Contact","social":"Social"}},"margin":{"type":"string","default":""},"sectionSpacing":{"type":"number","default":15},"boxShadow":{"type":"boolean","default":false},"boxShadowColor":{"type":"string","default":"rgba(0,0,0,0.2)"},"boxShadowBlur":{"type":"number","default":8},"boxShadowSpread":{"type":"number","default":0},"boxShadowHorizontal":{"type":"number","default":0},"boxShadowVertical":{"type":"number","default":4},"borderRadius":{"type":"number","default":0},"containerWidth":{"type":"string","default":""},"customVar1":{"type":"string","default":""},"customVar2":{"type":"string","default":""}},"example":{"attributes":{"columns":3,"showImage":true,"showEmail":true,"showDescription":true,"showPosition":true,"showSocial":true,"layout":"card","backgroundColor":"#f8f9fa","textAlign":"center","padding":20,"enableShadow":true,"enableRounded":true},"viewportWidth":800},"supports":{"html":false,"align":["wide","full"],"spacing":{"margin":true}},"textdomain":"author-profile-blocks","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css"},"author-profile-blocks\/author-carousel":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"author-profile-blocks\/author-carousel","version":"1.0.4","title":"Author Carousel","category":"widgets","icon":"slides","description":"Display multiple authors in an interactive carousel with customizable options.","attributes":{"authorIds":{"type":"array","default":[]},"slidesToShow":{"type":"number","default":3},"autoplay":{"type":"boolean","default":true},"autoplaySpeed":{"type":"number","default":3000},"showDots":{"type":"boolean","default":true},"showArrows":{"type":"boolean","default":true},"infinite":{"type":"boolean","default":true},"showImage":{"type":"boolean","default":true},"showEmail":{"type":"boolean","default":true},"showDescription":{"type":"boolean","default":true},"showPosition":{"type":"boolean","default":true},"showRegisteredDate":{"type":"boolean","default":true},"showSocial":{"type":"boolean","default":true},"layout":{"type":"string","default":"card"},"backgroundColor":{"type":"string","default":"#ffffff"},"textAlign":{"type":"string","default":"center"},"padding":{"type":"number","default":20},"slideSpacing":{"type":"number","default":20},"enableShadow":{"type":"boolean","default":true},"enableBorder":{"type":"boolean","default":false},"borderColor":{"type":"string","default":"#e0e0e0"},"borderWidth":{"type":"number","default":1},"enableRounded":{"type":"boolean","default":true},"maxAuthors":{"type":"number","default":10},"authorRole":{"type":"string","default":""},"layoutPreset":{"type":"string","default":"default"},"animationType":{"type":"string","default":"none"},"animationDuration":{"type":"number","default":300},"hoverEffect":{"type":"string","default":"none"},"customCssClass":{"type":"string","default":""},"googleFont":{"type":"string","default":""},"fontSizeUnit":{"type":"string","default":"px"},"gradientBackground":{"type":"boolean","default":false},"gradientStartColor":{"type":"string","default":"#ffffff"},"gradientEndColor":{"type":"string","default":"#f8f9fa"},"gradientDirection":{"type":"string","default":"to bottom"},"transformScale":{"type":"number","default":1},"transformRotate":{"type":"number","default":0},"filterBrightness":{"type":"number","default":100},"filterContrast":{"type":"number","default":100},"filterSaturate":{"type":"number","default":100},"lazyLoad":{"type":"boolean","default":true},"contentTabs":{"type":"boolean","default":false},"tabLabels":{"type":"object","default":{"bio":"Bio","contact":"Contact","social":"Social"}},"margin":{"type":"string","default":""},"sectionSpacing":{"type":"number","default":15},"boxShadow":{"type":"boolean","default":false},"boxShadowColor":{"type":"string","default":"rgba(0,0,0,0.2)"},"boxShadowBlur":{"type":"number","default":8},"boxShadowSpread":{"type":"number","default":0},"boxShadowHorizontal":{"type":"number","default":0},"boxShadowVertical":{"type":"number","default":4},"borderRadius":{"type":"number","default":0},"containerWidth":{"type":"string","default":""},"customVar1":{"type":"string","default":""},"customVar2":{"type":"string","default":""}},"example":{"attributes":{"slidesToShow":3,"autoplay":true,"showImage":true,"showEmail":true,"showDescription":true,"showPosition":true,"showSocial":true,"layout":"card","backgroundColor":"#f8f9fa","textAlign":"center"},"viewportWidth":800},"supports":{"html":false,"align":["wide","full"],"spacing":{"margin":true}},"textdomain":"author-profile-blocks","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js","viewStyle":"file:.\/view.css"},"author-profile-blocks\/author-list":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"author-profile-blocks\/author-list","version":"1.0.4","title":"Author List","category":"widgets","icon":"list-view","description":"Display a list of authors with customizable layouts.","textdomain":"author-profile-blocks","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css","viewScript":"file:.\/view.js","attributes":{"authorIds":{"type":"array","default":[]},"authorRole":{"type":"string","default":""},"maxAuthors":{"type":"number","default":0},"displayStyle":{"type":"string","default":"compact","enum":["compact","detailed","minimal"]},"listStyle":{"type":"string","default":"ul","enum":["ul","ol"]},"enableDividers":{"type":"boolean","default":true},"dividerColor":{"type":"string","default":"#e0e0e0"},"enableRounded":{"type":"boolean","default":false},"enableHoverEffect":{"type":"boolean","default":false},"backgroundColor":{"type":"string","default":""},"itemBackgroundColor":{"type":"string","default":""},"textAlign":{"type":"string","default":"left"},"blockPadding":{"type":"number","default":16},"itemPadding":{"type":"number","default":15},"itemSpacing":{"type":"number","default":15},"showImage":{"type":"boolean","default":true},"showPosition":{"type":"boolean","default":true},"showEmail":{"type":"boolean","default":false},"showDescription":{"type":"boolean","default":false},"showSocial":{"type":"boolean","default":true},"layoutPreset":{"type":"string","default":"default"},"animationType":{"type":"string","default":"none"},"animationDuration":{"type":"number","default":300},"hoverEffect":{"type":"string","default":"none"},"customCssClass":{"type":"string","default":""},"googleFont":{"type":"string","default":""},"fontSizeUnit":{"type":"string","default":"px"},"gradientBackground":{"type":"boolean","default":false},"gradientStartColor":{"type":"string","default":"#ffffff"},"gradientEndColor":{"type":"string","default":"#f8f9fa"},"gradientDirection":{"type":"string","default":"to bottom"},"transformScale":{"type":"number","default":1},"transformRotate":{"type":"number","default":0},"filterBrightness":{"type":"number","default":100},"filterContrast":{"type":"number","default":100},"filterSaturate":{"type":"number","default":100},"lazyLoad":{"type":"boolean","default":true},"contentTabs":{"type":"boolean","default":false},"tabLabels":{"type":"object","default":{"bio":"Bio","contact":"Contact","social":"Social"}},"margin":{"type":"string","default":""},"sectionSpacing":{"type":"number","default":15},"boxShadow":{"type":"boolean","default":false},"boxShadowColor":{"type":"string","default":"rgba(0,0,0,0.2)"},"boxShadowBlur":{"type":"number","default":8},"boxShadowSpread":{"type":"number","default":0},"boxShadowHorizontal":{"type":"number","default":0},"boxShadowVertical":{"type":"number","default":4},"borderWidth":{"type":"number","default":0},"borderColor":{"type":"string","default":"#e0e0e0"},"borderRadius":{"type":"number","default":0},"containerWidth":{"type":"string","default":""},"customVar1":{"type":"string","default":""},"customVar2":{"type":"string","default":""}},"supports":{"html":false,"align":["wide","full"],"spacing":{"margin":true}},"example":{"attributes":{"displayStyle":"compact","enableDividers":true,"showImage":true,"showPosition":true,"showSocial":true}}},"author-profile-blocks\/author-profile":{"$schema":"https:\/\/schemas.wp.org\/trunk\/block.json","apiVersion":3,"name":"author-profile-blocks\/author-profile","version":"1.0.4","title":"Author Profile","category":"widgets","icon":"admin-users","description":"Showcase author profiles with a beautiful Gutenberg block that displays author information from WordPress users.","attributes":{"authorId":{"type":"number","default":0},"showImage":{"type":"boolean","default":true},"showEmail":{"type":"boolean","default":true},"showDescription":{"type":"boolean","default":true},"showRegisteredDate":{"type":"boolean","default":true},"showMoreContent":{"type":"boolean","default":false},"moreContent":{"type":"string","default":""},"backgroundColor":{"type":"string","default":"#ffffff"},"textAlign":{"type":"string","default":"left"},"padding":{"type":"number","default":20},"avatarSize":{"type":"number","default":80},"avatarShape":{"type":"string","default":"circle"},"avatarBorderWidth":{"type":"number","default":0},"avatarBorderColor":{"type":"string","default":"#e0e0e0"},"avatarBorderRadius":{"type":"number","default":8},"avatarAlignment":{"type":"string","default":"center"},"avatarMargin":{"type":"number","default":10},"nameColor":{"type":"string","default":""},"nameSize":{"type":"number","default":20},"nameWeight":{"type":"string","default":"normal"},"nameAlignment":{"type":"string","default":"left"},"nameMargin":{"type":"number","default":5},"nameTransform":{"type":"string","default":"none"},"descriptionColor":{"type":"string","default":""},"descriptionSize":{"type":"number","default":14},"descriptionLineHeight":{"type":"number","default":1.6},"descriptionAlignment":{"type":"string","default":"left"},"descriptionMargin":{"type":"number","default":10},"descriptionStyle":{"type":"string","default":"normal"},"metaColor":{"type":"string","default":""},"metaSize":{"type":"number","default":13},"metaAlignment":{"type":"string","default":"left"},"metaMargin":{"type":"number","default":5},"metaStyle":{"type":"string","default":"normal"},"metaBold":{"type":"boolean","default":false},"emailLinkColor":{"type":"string","default":""},"emailHoverColor":{"type":"string","default":""},"showSocialLinks":{"type":"boolean","default":false},"socialLinksToShow":{"type":"array","default":["facebook","twitter","linkedin","instagram","youtube","github","website"]},"socialIconSize":{"type":"number","default":16},"socialIconColor":{"type":"string","default":""},"socialIconHoverColor":{"type":"string","default":""},"socialIconSpacing":{"type":"number","default":10},"socialIconAlignment":{"type":"string","default":"left"},"socialIconBackground":{"type":"string","default":"#f0f0f0"},"socialIconBackgroundHover":{"type":"string","default":"#333333"},"moreContentBorderColor":{"type":"string","default":"#eeeeee"},"moreContentPadding":{"type":"number","default":15},"blockStyle":{"type":"string","default":""},"contentOrder":{"type":"string","default":"image-content"},"layoutPreset":{"type":"string","default":"default"},"animationType":{"type":"string","default":"none"},"animationDuration":{"type":"number","default":300},"hoverEffect":{"type":"string","default":"none"},"customCssClass":{"type":"string","default":""},"googleFont":{"type":"string","default":""},"fontSizeUnit":{"type":"string","default":"px"},"gradientBackground":{"type":"boolean","default":false},"gradientStartColor":{"type":"string","default":"#ffffff"},"gradientEndColor":{"type":"string","default":"#f8f9fa"},"gradientDirection":{"type":"string","default":"to bottom"},"transformScale":{"type":"number","default":1},"transformRotate":{"type":"number","default":0},"filterBrightness":{"type":"number","default":100},"filterContrast":{"type":"number","default":100},"filterSaturate":{"type":"number","default":100},"lazyLoad":{"type":"boolean","default":true},"contentTabs":{"type":"boolean","default":false},"tabLabels":{"type":"object","default":{"bio":"Bio","contact":"Contact","social":"Social"}},"margin":{"type":"string","default":""},"sectionSpacing":{"type":"number","default":15},"boxShadow":{"type":"boolean","default":false},"boxShadowColor":{"type":"string","default":"rgba(0,0,0,0.2)"},"boxShadowBlur":{"type":"number","default":8},"boxShadowSpread":{"type":"number","default":0},"boxShadowHorizontal":{"type":"number","default":0},"boxShadowVertical":{"type":"number","default":4},"borderWidth":{"type":"number","default":0},"borderColor":{"type":"string","default":"#e0e0e0"},"borderRadius":{"type":"number","default":0},"containerWidth":{"type":"string","default":""},"customVar1":{"type":"string","default":""},"customVar2":{"type":"string","default":""}},"example":{"attributes":{"textAlign":"left","showImage":true,"showEmail":true,"showDescription":true,"showMoreContent":true,"moreContent":"This is an example of the additional content section.","backgroundColor":"#f8f9fa","padding":25},"viewportWidth":800},"supports":{"html":false,"align":["wide","full"],"spacing":{"margin":true}},"textdomain":"author-profile-blocks","editorScript":"file:.\/index.js","editorStyle":"file:.\/index.css","style":"file:.\/style-index.css"}},"tagged_versions":["1.0.0","1.0.1","1.0.3","1.0.4","1.1.0"],"block_files":[],"assets_screenshots":{"screenshot-1.png":{"filename":"screenshot-1.png","revision":3511419,"resolution":"1","location":"assets","locale":"","width":1280,"height":960},"screenshot-2.png":{"filename":"screenshot-2.png","revision":3511419,"resolution":"2","location":"assets","locale":"","width":1280,"height":960},"screenshot-3.png":{"filename":"screenshot-3.png","revision":3511419,"resolution":"3","location":"assets","locale":"","width":1280,"height":960},"screenshot-4.png":{"filename":"screenshot-4.png","revision":3511419,"resolution":"4","location":"assets","locale":"","width":1280,"height":960},"screenshot-5.png":{"filename":"screenshot-5.png","revision":3511419,"resolution":"5","location":"assets","locale":"","width":1280,"height":908}},"screenshots":{"1":"Author Profile block in the Gutenberg editor \u2014 content elements panel open.","2":"Style tab \u2014 avatar shape, typography controls, colors, and layout presets.","3":"Author Grid block \u2014 multiple authors displayed in responsive 3-column card layout.","4":"Author Carousel block \u2014 sliding author cards with the modern-cards preset active.","5":"Author List block \u2014 detailed display style with two-column image and bio layout."}},"plugin_section":[],"plugin_tags":[132,1220,148076,435,3491],"plugin_category":[43,58],"plugin_contributors":[221130],"plugin_business_model":[],"class_list":["post-231464","plugin","type-plugin","status-publish","hentry","plugin_tags-author","plugin_tags-block","plugin_tags-gutenberg","plugin_tags-profile","plugin_tags-team","plugin_category-customization","plugin_category-user-management","plugin_contributors-mralaminahamed","plugin_committers-mralaminahamed"],"banners":{"banner":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/banner-772x250.png?rev=3511419","banner_2x":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/banner-1544x500.png?rev=3511419","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/icon-128x128.png?rev=3511419","icon_2x":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/icon-256x256.png?rev=3511419","generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/screenshot-1.png?rev=3511419","caption":"Author Profile block in the Gutenberg editor \u2014 content elements panel open."},{"src":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/screenshot-2.png?rev=3511419","caption":"Style tab \u2014 avatar shape, typography controls, colors, and layout presets."},{"src":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/screenshot-3.png?rev=3511419","caption":"Author Grid block \u2014 multiple authors displayed in responsive 3-column card layout."},{"src":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/screenshot-4.png?rev=3511419","caption":"Author Carousel block \u2014 sliding author cards with the modern-cards preset active."},{"src":"https:\/\/ps.w.org\/author-profile-blocks\/assets\/screenshot-5.png?rev=3511419","caption":"Author List block \u2014 detailed display style with two-column image and bio layout."}],"raw_content":"<!--section=description-->\n<p><strong>Author Profile Blocks<\/strong> is a WordPress plugin for showcasing author profiles and team members using four Gutenberg blocks, four shortcodes, and a classic widget. It supports two data sources: standard WordPress Users and an optional Team Member custom post type (<code>apbl_team_member<\/code>).<\/p>\n\n<p><a href=\"https:\/\/playground.wordpress.net\/?blueprint-url=https:\/\/raw.githubusercontent.com\/mralaminahamed\/author-profile-blocks\/trunk\/.wordpress-org\/blueprints\/blueprint.json\">Live Preview<\/a> | <a href=\"https:\/\/github.com\/mralaminahamed\/author-profile-blocks\">GitHub<\/a> | <a href=\"https:\/\/github.com\/mralaminahamed\/author-profile-blocks#readme\">Documentation<\/a><\/p>\n\n<h3>Four Block Types<\/h3>\n\n<p><strong>Author Profile<\/strong> \u2014 Single author showcase with full control over layout order, avatar shape, typography, and social links. Four content order variants: image-content, content-image, image-top, content-top.<\/p>\n\n<p><strong>Author Grid<\/strong> \u2014 Responsive grid of multiple authors. Supports 1\u20134 columns with five style presets: card, minimal, bordered, shadow, mosaic.<\/p>\n\n<p><strong>Author List<\/strong> \u2014 Vertical author list with three display styles: compact (image + summary), detailed (full two-column layout), and minimal (name + position only). Supports ordered or unordered lists.<\/p>\n\n<p><strong>Author Carousel<\/strong> \u2014 Interactive slider built on <a href=\"https:\/\/kenwheeler.github.io\/slick\/\">Slick<\/a>. Seven style presets including modern cards, classic carousel, elegant profile, and creative gradient layout. Configurable slides, autoplay, dots, and arrows.<\/p>\n\n<h3>Shortcodes<\/h3>\n\n<p>Four shortcodes are available for classic themes or page builders:<\/p>\n\n<ul>\n<li><code>[apbl_profile]<\/code> \u2014 single author card<\/li>\n<li><code>[apbl_grid]<\/code> \u2014 responsive author grid<\/li>\n<li><code>[apbl_list]<\/code> \u2014 author list<\/li>\n<li><code>[apbl_carousel]<\/code> \u2014 author carousel with autoplay<\/li>\n<\/ul>\n\n<p>All shortcodes accept <code>id<\/code>, <code>source<\/code> (user or team_member), <code>style<\/code>, <code>number<\/code>, and display toggle attributes.<\/p>\n\n<h3>Classic Widget<\/h3>\n\n<p>The <strong>Author Profile Widget<\/strong> lets you add a single author card to any widget area. Choose the author, display style, and whether to show social links and bio.<\/p>\n\n<h3>Team Member CPT<\/h3>\n\n<p>Activate the built-in <code>apbl_team_member<\/code> custom post type to manage team members separately from WordPress users. Supports title, bio, featured image, and menu order. Each team member has position and social profile meta fields. Organise members by department using the hierarchical <code>apbl_department<\/code> taxonomy.<\/p>\n\n<h3>Design System<\/h3>\n\n<p>Every block ships with a refined indigo editorial design \u2014 distinctive typography, layered shadows, smooth cubic-bezier transitions, and an indigo accent system with animated hover reveals. All visual properties are overridable via <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/Using_CSS_custom_properties\">CSS custom properties<\/a>.<\/p>\n\n<h3>Customization Options<\/h3>\n\n<ul>\n<li><strong>Avatar<\/strong>: circle, square, rounded, or custom border-radius; configurable size and border<\/li>\n<li><strong>Typography<\/strong>: name size, weight, color, alignment, letter-spacing; position shown as uppercase indigo badge<\/li>\n<li><strong>Layout presets<\/strong>: choose from registered style variations (card, minimal, bordered, shadow, and more) per block<\/li>\n<li><strong>Animations<\/strong>: 7 entrance animation types \u2014 fadeIn, slideUp, slideDown, slideLeft, slideRight, scaleIn, bounce<\/li>\n<li><strong>Hover effects<\/strong>: lift, glow, scale, rotate, shadow \u2014 applied to items or the block wrapper<\/li>\n<li><strong>Social icons<\/strong>: square pill shape with indigo fill on hover; supports Facebook, Twitter\/X, LinkedIn, Instagram, website<\/li>\n<li><strong>Colors<\/strong>: background, border, text, gradient \u2014 all configurable via the inspector<\/li>\n<li><strong>Spacing<\/strong>: section spacing, padding, item spacing, container width<\/li>\n<li><strong>Advanced<\/strong>: CSS filters (brightness, contrast, saturation), transform (scale, rotate), box shadow, custom CSS class, <a href=\"https:\/\/fonts.google.com\/\">Google Font<\/a> support<\/li>\n<\/ul>\n\n<h3>User Profile Extensions<\/h3>\n\n<p>The plugin adds extra fields to the standard <a href=\"https:\/\/wordpress.org\/documentation\/article\/users-your-profile-screen\/\">WordPress user profile screen<\/a>:<\/p>\n\n<ul>\n<li>Position \/ job title<\/li>\n<li>Extended bio<\/li>\n<li>Social media URLs: Facebook, Twitter\/X, LinkedIn, Instagram, personal website<\/li>\n<li>Custom \"Member since\" label<\/li>\n<li>Department<\/li>\n<li>Skills<\/li>\n<li>Location<\/li>\n<li>Phone<\/li>\n<li>Availability<\/li>\n<li>Website label<\/li>\n<\/ul>\n\n<h3>Performance<\/h3>\n\n<ul>\n<li>Server-side rendering with PHP template caching<\/li>\n<li>Configurable cache duration<\/li>\n<li>Lazy loading for author avatars<\/li>\n<li>No unnecessary JavaScript on the frontend<\/li>\n<\/ul>\n\n<h3>Developer-Friendly<\/h3>\n\n<ul>\n<li>Clean PHP template hierarchy \u2014 override any template from your theme<\/li>\n<li>Extensive <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/Using_CSS_custom_properties\">CSS custom properties<\/a> for runtime styling<\/li>\n<li>WordPress filter hooks on every rendered block and shortcode<\/li>\n<li>Modern SCSS source with <code>@use<\/code>\/<code>@forward<\/code> module system and <code>sass:color<\/code> functions<\/li>\n<li><code>apbl-<\/code> namespaced CSS classes throughout<\/li>\n<li><a href=\"https:\/\/www.php-fig.org\/psr\/psr-4\/\">PSR-4<\/a> autoloaded, <a href=\"https:\/\/developer.wordpress.org\/coding-standards\/wordpress-coding-standards\/\">WordPress Coding Standards<\/a> compliant<\/li>\n<li>Full <a href=\"https:\/\/github.com\/mralaminahamed\/author-profile-blocks#readme\">developer documentation on GitHub<\/a><\/li>\n<\/ul>\n\n<h3>Support<\/h3>\n\n<ul>\n<li><a href=\"https:\/\/wordpress.org\/support\/plugin\/author-profile-blocks\/\">WordPress.org support forum<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/mralaminahamed\/author-profile-blocks\/issues\">GitHub issues<\/a><\/li>\n<li><a href=\"https:\/\/github.com\/mralaminahamed\/author-profile-blocks#readme\">Developer documentation<\/a><\/li>\n<li><a href=\"https:\/\/playground.wordpress.net\/?blueprint-url=https:\/\/raw.githubusercontent.com\/mralaminahamed\/author-profile-blocks\/trunk\/.wordpress-org\/blueprints\/blueprint.json\">Live Preview on WordPress Playground<\/a><\/li>\n<\/ul>\n\n<!--section=installation-->\n<ol>\n<li>Upload the plugin folder to <code>\/wp-content\/plugins\/<\/code>, or install via <strong>Plugins \u2192 Add New<\/strong>.<\/li>\n<li>Activate the plugin.<\/li>\n<li>Go to <strong>Users \u2192 Your Profile<\/strong> (or any user's profile) to add author information.<\/li>\n<li>Optionally go to <strong>Team Members<\/strong> in the admin menu to add team members.<\/li>\n<li>Open any page or post in the <a href=\"https:\/\/wordpress.org\/gutenberg\/\">Gutenberg editor<\/a> and search for \"author\" to find the blocks.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20this%20plugin%20create%20a%20custom%20post%20type%3F\"><h3>Does this plugin create a custom post type?<\/h3><\/dt>\n<dd><p>Yes, optionally. The plugin registers an <code>apbl_team_member<\/code> custom post type alongside standard WordPress Users. You can use either source (or both) in any block or shortcode via the <code>source<\/code> attribute. If you only want to display WordPress users, ignore the Team Members menu entirely.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20author%20data%20like%20position%20or%20social%20links%3F\"><h3>How do I add author data like position or social links?<\/h3><\/dt>\n<dd><p>For WordPress Users, edit any user profile under <strong>Users \u2192 All Users \u2192 Edit<\/strong>. The plugin adds a dedicated \"Author Profile\" section.<\/p>\n\n<p>For Team Members, go to <strong>Team Members \u2192 Add New<\/strong> in the admin menu.<\/p><\/dd>\n<dt id=\"can%20i%20use%20shortcodes%20instead%20of%20blocks%3F\"><h3>Can I use shortcodes instead of blocks?<\/h3><\/dt>\n<dd><p>Yes. Four shortcodes are available for classic themes or page builders: <code>[apbl_profile]<\/code>, <code>[apbl_grid]<\/code>, <code>[apbl_list]<\/code>, and <code>[apbl_carousel]<\/code>. Each accepts the same source, style, and display options as the corresponding block.<\/p><\/dd>\n<dt id=\"can%20i%20override%20the%20block%20templates%3F\"><h3>Can I override the block templates?<\/h3><\/dt>\n<dd><p>Yes. Copy any file from <code>wp-content\/plugins\/author-profile-blocks\/templates\/<\/code> into <code>wp-content\/themes\/your-theme\/author-profile-blocks\/<\/code> and the plugin will use your version instead. See <a href=\"https:\/\/github.com\/mralaminahamed\/author-profile-blocks#template-override\">template override documentation<\/a> for details.<\/p><\/dd>\n<dt id=\"how%20do%20i%20change%20block%20styles%3F\"><h3>How do I change block styles?<\/h3><\/dt>\n<dd><p>Each block exposes a full Style panel in the block sidebar. For deeper overrides, all CSS uses <code>apbl-<\/code> prefixed classes and <code>--author-*<\/code> <a href=\"https:\/\/developer.mozilla.org\/en-US\/docs\/Web\/CSS\/Using_CSS_custom_properties\">CSS custom properties<\/a>, making targeted overrides straightforward.<\/p><\/dd>\n<dt id=\"can%20i%20show%20only%20authors%20with%20a%20specific%20role%3F\"><h3>Can I show only authors with a specific role?<\/h3><\/dt>\n<dd><p>Yes. The Grid, List, and Carousel blocks and their shortcode equivalents include a role filter. Set it to any registered <a href=\"https:\/\/wordpress.org\/documentation\/article\/roles-and-capabilities\/\">WordPress role<\/a> and only users with that role will be displayed.<\/p><\/dd>\n<dt id=\"can%20i%20show%20only%20team%20members%20from%20a%20specific%20department%3F\"><h3>Can I show only team members from a specific department?<\/h3><\/dt>\n<dd><p>Yes. The <code>apbl_department<\/code> taxonomy is hierarchical. Use the department filter in the block inspector or shortcode <code>department<\/code> attribute to narrow results.<\/p><\/dd>\n<dt id=\"is%20the%20plugin%20compatible%20with%20full-site%20editing%20%28fse%29%20themes%3F\"><h3>Is the plugin compatible with full-site editing (FSE) themes?<\/h3><\/dt>\n<dd><p>Yes. The blocks render server-side and use standard <a href=\"https:\/\/developer.wordpress.org\/block-editor\/reference-guides\/block-api\/block-supports\/\">Gutenberg block wrapper attributes<\/a>, so they work in both classic and FSE\/block themes.<\/p><\/dd>\n<dt id=\"will%20it%20slow%20down%20my%20site%3F\"><h3>Will it slow down my site?<\/h3><\/dt>\n<dd><p>Each block caches its rendered HTML. On repeat page loads, output is served from cache rather than re-querying the database and re-rendering PHP templates.<\/p><\/dd>\n<dt id=\"is%20the%20plugin%20translation-ready%3F\"><h3>Is the plugin translation-ready?<\/h3><\/dt>\n<dd><p>Yes. All user-facing strings use <code>__()<\/code>, <code>_e()<\/code>, and related <a href=\"https:\/\/developer.wordpress.org\/plugins\/internationalization\/how-to-internationalize-your-plugin\/\">WordPress i18n functions<\/a> with the <code>author-profile-blocks<\/code> text domain.<\/p><\/dd>\n<dt id=\"where%20can%20i%20report%20bugs%20or%20request%20features%3F\"><h3>Where can I report bugs or request features?<\/h3><\/dt>\n<dd><p>Open an issue on <a href=\"https:\/\/github.com\/mralaminahamed\/author-profile-blocks\/issues\">GitHub<\/a> or post in the <a href=\"https:\/\/wordpress.org\/support\/plugin\/author-profile-blocks\/\">WordPress.org support forum<\/a>.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Add: Team Member CPT (<code>apbl_team_member<\/code>) \u2014 title, editor, thumbnail, menu-order; position and social profiles meta; REST-enabled.<\/li>\n<li>Add: Department taxonomy (<code>apbl_department<\/code>) \u2014 hierarchical, attached to both team members and WordPress users; REST-enabled.<\/li>\n<li>Add: AuthorDataProvider service \u2014 normalises WP Users and Team Members into a shared author shape; result cache cleared on profile update and team-member save.<\/li>\n<li>Add: 6 new user meta fields \u2014 department, skills, location, phone, availability, website label; all REST-exposed and shown on the WP profile screen.<\/li>\n<li>Add: Four shortcodes \u2014 [apbl_profile], [apbl_grid], [apbl_list], [apbl_carousel] \u2014 all supporting source, style, and display toggle attributes.<\/li>\n<li>Add: Author Profile classic widget \u2014 wraps [apbl_profile] with author picker, style selector, and show-socials\/show-bio toggles.<\/li>\n<li>Add: WordPress Playground blueprint for live preview on WordPress.org.<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fix: blocks render blank on frontend when no author selected (error div was leaking to visitors).<\/li>\n<li>Fix: carousel broken on classic themes \u2014 jquery declared as dependency so Slick initialises correctly.<\/li>\n<li>Fix: production zip was missing vendor\/autoload.php on fresh installs from WordPress.org.<\/li>\n<li>Fix: CSS color\/length injection \u2014 all color and length attributes now pass through sanitization helpers.<\/li>\n<li>Fix: dead duplicate --author-custom-var-1\/2 CSS variable block removed.<\/li>\n<li>Fix: template arbitrary file inclusion \u2014 get_template() now validates path is within plugin, active theme, or child theme.<\/li>\n<li>Fix: raw $_POST no longer passed as argument to do_action('author_profile_blocks_save_profile_fields').<\/li>\n<li>Fix: extract() in get_template() replaced with explicit foreach loop for wp.org review compliance.<\/li>\n<li>Fix: registration date displayed in wrong timezone \u2014 now uses mysql2date() for correct UTC to local conversion.<\/li>\n<li>Update: tested up to WordPress 6.9.<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Refactor: split AuthorBlockBase god-class into 7 focused traits under includes\/Blocks\/Concerns\/.<\/li>\n<li>Refactor: promoted 5 inspector components to shared src\/supports\/js\/components\/inspector\/.<\/li>\n<li>Refactor: extracted loadGoogleFont into shared useGoogleFont hook.<\/li>\n<li>Fix: author profile block missing save: () =&gt; null (silent default-save bug).<\/li>\n<li>Fix: carousel single-slide crash in Slick initADA.<\/li>\n<li>Fix: AuthorsListPreview data shape mismatch corrected.<\/li>\n<li>Fix: PHPCS clean for wp.org plugin review standard.<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Add: React + shadcn\/ui admin SPA replacing legacy PHP settings page.<\/li>\n<li>Add: REST API endpoint \/v1\/settings for plugin configuration.<\/li>\n<li>Add: TypeScript migration for all JS files in src\/blocks\/ and src\/admin\/.<\/li>\n<li>Change: Tailwind v3 migrated to v4 with CSS variable-based theming.<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: align all apbl- CSS class selectors with PHP template output.<\/li>\n<li>Fix: animation duration now reads --author-animation-duration CSS custom property.<\/li>\n<li>Improve: indigo editorial design system \u2014 refined shadows, cubic-bezier transitions, animated accent reveals.<\/li>\n<li>Update: tested up to WordPress 6.7.<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release.<\/li>\n<li>Author Profile block with four content order variants and full typography\/avatar controls.<\/li>\n<li>Author Grid block with 1-4 column responsive grid and five style presets.<\/li>\n<li>Author List block with compact, detailed, and minimal display styles.<\/li>\n<li>Author Carousel block with Slick slider integration and seven style presets.<\/li>\n<li>Indigo editorial design system.<\/li>\n<li>Seven entrance animation types per block.<\/li>\n<li>Five hover effect types per block.<\/li>\n<li>Social icon support: Facebook, Twitter\/X, LinkedIn, Instagram, website.<\/li>\n<li>Extended WordPress user profile fields: position, bio, social links, member-since label.<\/li>\n<li>PHP template system with full theme-override support.<\/li>\n<li>CSS custom property architecture for runtime styling.<\/li>\n<li>Translation-ready with author-profile-blocks text domain.<\/li>\n<\/ul>","raw_excerpt":"Display author profiles and team members in Gutenberg blocks, shortcodes, and widgets \u2014 grid, carousel, list, and single profile.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/231464","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=231464"}],"author":[{"embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/mralaminahamed"}],"wp:attachment":[{"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=231464"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=231464"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=231464"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=231464"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=231464"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/azb.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=231464"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}