Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add post author avatar block #38265

Closed
wants to merge 13 commits into from
Closed

Add post author avatar block #38265

wants to merge 13 commits into from

Conversation

carolinan
Copy link
Contributor

@carolinan carolinan commented Jan 27, 2022

Description

Adds a new block for the post author avatar.
Partial for #35596
Also closes #31962, #35693

The goal is to support the following:

  • Resizing
  • Border
  • Link to author archive
  • Duotone
  • Margin
  • None/Left/center/right align
  • Bonus: Display a placeholder while loading

Compared to the comment avatar I opted out of padding and background color because I did not see how the background color would be used with this block.

The block has a wrapping figure element, an optional link, and an image element.

The wrapper is needed for two reasons:

Problems:

  • The duotone and the spacing styles need to be placed on the wrapper.
  • The border styles need to be placed only on the image element, if it is placed on the wrapper it does not achieve the wanted effect.
  • In the editor, only top and right margin works, because the wrapper does not have a width.
    Adding width: fit-content to the wrapper may solve this. On the front, all four sides of the margin works, because it is added to the image element. This does lead to inconsistencies between the editor and front.

Question:
How do I remove the "has-border-color" CSS class from blockProps, which is placed on the wrapper?
I read through the documentation for classnames and tried several things but was not able to remove it.

Alternatives:
The block could include a CSS file to force hide the border on the wrapper but that did not feel like the right approach either.

Testing Instructions

  1. Open a post or page in the editor
  2. Insert a post author avatar block
  3. Duplicate the block and try the different settings, including colors.

Screenshots

Types of changes

New feature (non-breaking change which adds functionality)

Checklist:

  • My code is tested.
  • My code follows the WordPress code style.
  • My code follows the accessibility standards.
  • I've tested my changes with keyboard and screen readers.
  • My code has proper inline documentation.
  • I've included developer documentation if appropriate.
  • I've updated all React Native files affected by any refactorings/renamings in this PR (please manually search all *.native.js files for terms that need renaming or removal).
  • I've updated related schemas if appropriate.

@carolinan carolinan added the New Block Suggestion for a new block label Jan 27, 2022
@github-actions
Copy link

github-actions bot commented Jan 27, 2022

Size Change: +1.61 kB (0%)

Total Size: 1.14 MB

Filename Size Change
build/block-editor/index.min.js 141 kB +13 B (0%)
build/block-library/blocks/cover/style-rtl.css 1.4 kB +179 B (+15%) ⚠️
build/block-library/blocks/cover/style.css 1.4 kB +180 B (+15%) ⚠️
build/block-library/editor-rtl.css 10.1 kB +47 B (0%)
build/block-library/editor.css 10.1 kB +47 B (0%)
build/block-library/index.min.js 167 kB +641 B (0%)
build/block-library/style-rtl.css 11 kB +251 B (+2%)
build/block-library/style.css 11.1 kB +254 B (+2%)
ℹ️ View Unchanged
Filename Size
build/a11y/index.min.js 960 B
build/admin-manifest/index.min.js 1.1 kB
build/annotations/index.min.js 2.75 kB
build/api-fetch/index.min.js 2.22 kB
build/autop/index.min.js 2.12 kB
build/blob/index.min.js 459 B
build/block-directory/index.min.js 6.28 kB
build/block-directory/style-rtl.css 1.01 kB
build/block-directory/style.css 1.01 kB
build/block-editor/default-editor-styles-rtl.css 378 B
build/block-editor/default-editor-styles.css 378 B
build/block-editor/style-rtl.css 14.6 kB
build/block-editor/style.css 14.6 kB
build/block-library/blocks/archives/editor-rtl.css 61 B
build/block-library/blocks/archives/editor.css 60 B
build/block-library/blocks/archives/style-rtl.css 65 B
build/block-library/blocks/archives/style.css 65 B
build/block-library/blocks/audio/editor-rtl.css 150 B
build/block-library/blocks/audio/editor.css 150 B
build/block-library/blocks/audio/style-rtl.css 111 B
build/block-library/blocks/audio/style.css 111 B
build/block-library/blocks/audio/theme-rtl.css 125 B
build/block-library/blocks/audio/theme.css 125 B
build/block-library/blocks/block/editor-rtl.css 161 B
build/block-library/blocks/block/editor.css 161 B
build/block-library/blocks/button/editor-rtl.css 470 B
build/block-library/blocks/button/editor.css 470 B
build/block-library/blocks/button/style-rtl.css 560 B
build/block-library/blocks/button/style.css 560 B
build/block-library/blocks/buttons/editor-rtl.css 292 B
build/block-library/blocks/buttons/editor.css 292 B
build/block-library/blocks/buttons/style-rtl.css 275 B
build/block-library/blocks/buttons/style.css 275 B
build/block-library/blocks/calendar/style-rtl.css 207 B
build/block-library/blocks/calendar/style.css 207 B
build/block-library/blocks/categories/editor-rtl.css 84 B
build/block-library/blocks/categories/editor.css 83 B
build/block-library/blocks/categories/style-rtl.css 79 B
build/block-library/blocks/categories/style.css 79 B
build/block-library/blocks/code/style-rtl.css 90 B
build/block-library/blocks/code/style.css 90 B
build/block-library/blocks/code/theme-rtl.css 131 B
build/block-library/blocks/code/theme.css 131 B
build/block-library/blocks/columns/editor-rtl.css 108 B
build/block-library/blocks/columns/editor.css 108 B
build/block-library/blocks/columns/style-rtl.css 406 B
build/block-library/blocks/columns/style.css 406 B
build/block-library/blocks/comment-template/style-rtl.css 127 B
build/block-library/blocks/comment-template/style.css 127 B
build/block-library/blocks/comments-pagination-numbers/editor-rtl.css 123 B
build/block-library/blocks/comments-pagination-numbers/editor.css 121 B
build/block-library/blocks/comments-pagination/editor-rtl.css 222 B
build/block-library/blocks/comments-pagination/editor.css 209 B
build/block-library/blocks/comments-pagination/style-rtl.css 235 B
build/block-library/blocks/comments-pagination/style.css 231 B
build/block-library/blocks/comments-query-loop/editor-rtl.css 95 B
build/block-library/blocks/comments-query-loop/editor.css 95 B
build/block-library/blocks/cover/editor-rtl.css 546 B
build/block-library/blocks/cover/editor.css 547 B
build/block-library/blocks/embed/editor-rtl.css 293 B
build/block-library/blocks/embed/editor.css 293 B
build/block-library/blocks/embed/style-rtl.css 417 B
build/block-library/blocks/embed/style.css 417 B
build/block-library/blocks/embed/theme-rtl.css 124 B
build/block-library/blocks/embed/theme.css 124 B
build/block-library/blocks/file/editor-rtl.css 300 B
build/block-library/blocks/file/editor.css 300 B
build/block-library/blocks/file/style-rtl.css 255 B
build/block-library/blocks/file/style.css 255 B
build/block-library/blocks/file/view.min.js 322 B
build/block-library/blocks/freeform/editor-rtl.css 2.44 kB
build/block-library/blocks/freeform/editor.css 2.44 kB
build/block-library/blocks/gallery/editor-rtl.css 965 B
build/block-library/blocks/gallery/editor.css 967 B
build/block-library/blocks/gallery/style-rtl.css 1.61 kB
build/block-library/blocks/gallery/style.css 1.61 kB
build/block-library/blocks/gallery/theme-rtl.css 122 B
build/block-library/blocks/gallery/theme.css 122 B
build/block-library/blocks/group/editor-rtl.css 159 B
build/block-library/blocks/group/editor.css 159 B
build/block-library/blocks/group/style-rtl.css 57 B
build/block-library/blocks/group/style.css 57 B
build/block-library/blocks/group/theme-rtl.css 78 B
build/block-library/blocks/group/theme.css 78 B
build/block-library/blocks/heading/style-rtl.css 114 B
build/block-library/blocks/heading/style.css 114 B
build/block-library/blocks/html/editor-rtl.css 332 B
build/block-library/blocks/html/editor.css 333 B
build/block-library/blocks/image/editor-rtl.css 810 B
build/block-library/blocks/image/editor.css 809 B
build/block-library/blocks/image/style-rtl.css 507 B
build/block-library/blocks/image/style.css 511 B
build/block-library/blocks/image/theme-rtl.css 124 B
build/block-library/blocks/image/theme.css 124 B
build/block-library/blocks/latest-comments/style-rtl.css 284 B
build/block-library/blocks/latest-comments/style.css 284 B
build/block-library/blocks/latest-posts/editor-rtl.css 199 B
build/block-library/blocks/latest-posts/editor.css 198 B
build/block-library/blocks/latest-posts/style-rtl.css 447 B
build/block-library/blocks/latest-posts/style.css 446 B
build/block-library/blocks/list/style-rtl.css 94 B
build/block-library/blocks/list/style.css 94 B
build/block-library/blocks/media-text/editor-rtl.css 266 B
build/block-library/blocks/media-text/editor.css 263 B
build/block-library/blocks/media-text/style-rtl.css 493 B
build/block-library/blocks/media-text/style.css 490 B
build/block-library/blocks/more/editor-rtl.css 431 B
build/block-library/blocks/more/editor.css 431 B
build/block-library/blocks/navigation-link/editor-rtl.css 649 B
build/block-library/blocks/navigation-link/editor.css 650 B
build/block-library/blocks/navigation-link/style-rtl.css 94 B
build/block-library/blocks/navigation-link/style.css 94 B
build/block-library/blocks/navigation-submenu/editor-rtl.css 299 B
build/block-library/blocks/navigation-submenu/editor.css 299 B
build/block-library/blocks/navigation-submenu/view.min.js 343 B
build/block-library/blocks/navigation/editor-rtl.css 1.92 kB
build/block-library/blocks/navigation/editor.css 1.93 kB
build/block-library/blocks/navigation/style-rtl.css 1.85 kB
build/block-library/blocks/navigation/style.css 1.84 kB
build/block-library/blocks/navigation/view.min.js 2.81 kB
build/block-library/blocks/nextpage/editor-rtl.css 395 B
build/block-library/blocks/nextpage/editor.css 395 B
build/block-library/blocks/page-list/editor-rtl.css 401 B
build/block-library/blocks/page-list/editor.css 402 B
build/block-library/blocks/page-list/style-rtl.css 175 B
build/block-library/blocks/page-list/style.css 175 B
build/block-library/blocks/paragraph/editor-rtl.css 157 B
build/block-library/blocks/paragraph/editor.css 157 B
build/block-library/blocks/paragraph/style-rtl.css 273 B
build/block-library/blocks/paragraph/style.css 273 B
build/block-library/blocks/post-author-avatar/editor-rtl.css 161 B
build/block-library/blocks/post-author-avatar/editor.css 161 B
build/block-library/blocks/post-author-avatar/style-rtl.css 77 B
build/block-library/blocks/post-author-avatar/style.css 77 B
build/block-library/blocks/post-author/style-rtl.css 175 B
build/block-library/blocks/post-author/style.css 176 B
build/block-library/blocks/post-comments-form/style-rtl.css 446 B
build/block-library/blocks/post-comments-form/style.css 446 B
build/block-library/blocks/post-comments/style-rtl.css 521 B
build/block-library/blocks/post-comments/style.css 521 B
build/block-library/blocks/post-excerpt/editor-rtl.css 73 B
build/block-library/blocks/post-excerpt/editor.css 73 B
build/block-library/blocks/post-excerpt/style-rtl.css 69 B
build/block-library/blocks/post-excerpt/style.css 69 B
build/block-library/blocks/post-featured-image/editor-rtl.css 721 B
build/block-library/blocks/post-featured-image/editor.css 721 B
build/block-library/blocks/post-featured-image/style-rtl.css 153 B
build/block-library/blocks/post-featured-image/style.css 153 B
build/block-library/blocks/post-template/editor-rtl.css 99 B
build/block-library/blocks/post-template/editor.css 98 B
build/block-library/blocks/post-template/style-rtl.css 323 B
build/block-library/blocks/post-template/style.css 323 B
build/block-library/blocks/post-terms/style-rtl.css 73 B
build/block-library/blocks/post-terms/style.css 73 B
build/block-library/blocks/post-title/style-rtl.css 80 B
build/block-library/blocks/post-title/style.css 80 B
build/block-library/blocks/preformatted/style-rtl.css 103 B
build/block-library/blocks/preformatted/style.css 103 B
build/block-library/blocks/pullquote/editor-rtl.css 198 B
build/block-library/blocks/pullquote/editor.css 198 B
build/block-library/blocks/pullquote/style-rtl.css 389 B
build/block-library/blocks/pullquote/style.css 388 B
build/block-library/blocks/pullquote/theme-rtl.css 167 B
build/block-library/blocks/pullquote/theme.css 167 B
build/block-library/blocks/query-pagination-numbers/editor-rtl.css 122 B
build/block-library/blocks/query-pagination-numbers/editor.css 121 B
build/block-library/blocks/query-pagination/editor-rtl.css 221 B
build/block-library/blocks/query-pagination/editor.css 211 B
build/block-library/blocks/query-pagination/style-rtl.css 234 B
build/block-library/blocks/query-pagination/style.css 231 B
build/block-library/blocks/query/editor-rtl.css 131 B
build/block-library/blocks/query/editor.css 132 B
build/block-library/blocks/quote/style-rtl.css 201 B
build/block-library/blocks/quote/style.css 201 B
build/block-library/blocks/quote/theme-rtl.css 223 B
build/block-library/blocks/quote/theme.css 226 B
build/block-library/blocks/rss/editor-rtl.css 202 B
build/block-library/blocks/rss/editor.css 204 B
build/block-library/blocks/rss/style-rtl.css 289 B
build/block-library/blocks/rss/style.css 288 B
build/block-library/blocks/search/editor-rtl.css 165 B
build/block-library/blocks/search/editor.css 165 B
build/block-library/blocks/search/style-rtl.css 397 B
build/block-library/blocks/search/style.css 398 B
build/block-library/blocks/search/theme-rtl.css 64 B
build/block-library/blocks/search/theme.css 64 B
build/block-library/blocks/separator/editor-rtl.css 99 B
build/block-library/blocks/separator/editor.css 99 B
build/block-library/blocks/separator/style-rtl.css 245 B
build/block-library/blocks/separator/style.css 245 B
build/block-library/blocks/separator/theme-rtl.css 172 B
build/block-library/blocks/separator/theme.css 172 B
build/block-library/blocks/shortcode/editor-rtl.css 474 B
build/block-library/blocks/shortcode/editor.css 474 B
build/block-library/blocks/site-logo/editor-rtl.css 744 B
build/block-library/blocks/site-logo/editor.css 744 B
build/block-library/blocks/site-logo/style-rtl.css 181 B
build/block-library/blocks/site-logo/style.css 181 B
build/block-library/blocks/site-tagline/editor-rtl.css 86 B
build/block-library/blocks/site-tagline/editor.css 86 B
build/block-library/blocks/site-title/editor-rtl.css 84 B
build/block-library/blocks/site-title/editor.css 84 B
build/block-library/blocks/social-link/editor-rtl.css 177 B
build/block-library/blocks/social-link/editor.css 177 B
build/block-library/blocks/social-links/editor-rtl.css 674 B
build/block-library/blocks/social-links/editor.css 673 B
build/block-library/blocks/social-links/style-rtl.css 1.37 kB
build/block-library/blocks/social-links/style.css 1.36 kB
build/block-library/blocks/spacer/editor-rtl.css 332 B
build/block-library/blocks/spacer/editor.css 332 B
build/block-library/blocks/spacer/style-rtl.css 48 B
build/block-library/blocks/spacer/style.css 48 B
build/block-library/blocks/table/editor-rtl.css 471 B
build/block-library/blocks/table/editor.css 472 B
build/block-library/blocks/table/style-rtl.css 481 B
build/block-library/blocks/table/style.css 481 B
build/block-library/blocks/table/theme-rtl.css 188 B
build/block-library/blocks/table/theme.css 188 B
build/block-library/blocks/tag-cloud/style-rtl.css 214 B
build/block-library/blocks/tag-cloud/style.css 215 B
build/block-library/blocks/template-part/editor-rtl.css 560 B
build/block-library/blocks/template-part/editor.css 559 B
build/block-library/blocks/template-part/theme-rtl.css 101 B
build/block-library/blocks/template-part/theme.css 101 B
build/block-library/blocks/text-columns/editor-rtl.css 95 B
build/block-library/blocks/text-columns/editor.css 95 B
build/block-library/blocks/text-columns/style-rtl.css 166 B
build/block-library/blocks/text-columns/style.css 166 B
build/block-library/blocks/verse/style-rtl.css 87 B
build/block-library/blocks/verse/style.css 87 B
build/block-library/blocks/video/editor-rtl.css 571 B
build/block-library/blocks/video/editor.css 572 B
build/block-library/blocks/video/style-rtl.css 173 B
build/block-library/blocks/video/style.css 173 B
build/block-library/blocks/video/theme-rtl.css 124 B
build/block-library/blocks/video/theme.css 124 B
build/block-library/common-rtl.css 908 B
build/block-library/common.css 905 B
build/block-library/reset-rtl.css 474 B
build/block-library/reset.css 474 B
build/block-library/theme-rtl.css 672 B
build/block-library/theme.css 676 B
build/block-serialization-default-parser/index.min.js 1.09 kB
build/block-serialization-spec-parser/index.min.js 2.79 kB
build/blocks/index.min.js 46.4 kB
build/components/index.min.js 215 kB
build/components/style-rtl.css 15.5 kB
build/components/style.css 15.5 kB
build/compose/index.min.js 11.2 kB
build/core-data/index.min.js 13.4 kB
build/customize-widgets/index.min.js 11.4 kB
build/customize-widgets/style-rtl.css 1.5 kB
build/customize-widgets/style.css 1.49 kB
build/data-controls/index.min.js 631 B
build/data/index.min.js 7.49 kB
build/date/index.min.js 31.9 kB
build/deprecated/index.min.js 485 B
build/dom-ready/index.min.js 304 B
build/dom/index.min.js 4.5 kB
build/edit-navigation/index.min.js 16.2 kB
build/edit-navigation/style-rtl.css 3.76 kB
build/edit-navigation/style.css 3.76 kB
build/edit-post/classic-rtl.css 546 B
build/edit-post/classic.css 547 B
build/edit-post/index.min.js 29.6 kB
build/edit-post/style-rtl.css 7.15 kB
build/edit-post/style.css 7.14 kB
build/edit-site/index.min.js 41.5 kB
build/edit-site/style-rtl.css 7.22 kB
build/edit-site/style.css 7.21 kB
build/edit-widgets/index.min.js 16.6 kB
build/edit-widgets/style-rtl.css 4.17 kB
build/edit-widgets/style.css 4.17 kB
build/editor/index.min.js 38.4 kB
build/editor/style-rtl.css 3.71 kB
build/editor/style.css 3.71 kB
build/element/index.min.js 3.29 kB
build/escape-html/index.min.js 517 B
build/format-library/index.min.js 6.58 kB
build/format-library/style-rtl.css 571 B
build/format-library/style.css 571 B
build/hooks/index.min.js 1.63 kB
build/html-entities/index.min.js 424 B
build/i18n/index.min.js 3.75 kB
build/is-shallow-equal/index.min.js 501 B
build/keyboard-shortcuts/index.min.js 1.8 kB
build/keycodes/index.min.js 1.39 kB
build/list-reusable-blocks/index.min.js 1.72 kB
build/list-reusable-blocks/style-rtl.css 838 B
build/list-reusable-blocks/style.css 838 B
build/media-utils/index.min.js 2.92 kB
build/notices/index.min.js 925 B
build/nux/index.min.js 2.08 kB
build/nux/style-rtl.css 747 B
build/nux/style.css 743 B
build/plugins/index.min.js 1.84 kB
build/primitives/index.min.js 917 B
build/priority-queue/index.min.js 582 B
build/react-i18n/index.min.js 671 B
build/react-refresh-entry/index.min.js 8.44 kB
build/react-refresh-runtime/index.min.js 7.31 kB
build/redux-routine/index.min.js 2.65 kB
build/reusable-blocks/index.min.js 2.22 kB
build/reusable-blocks/style-rtl.css 256 B
build/reusable-blocks/style.css 256 B
build/rich-text/index.min.js 11 kB
build/server-side-render/index.min.js 1.58 kB
build/shortcode/index.min.js 1.49 kB
build/token-list/index.min.js 639 B
build/url/index.min.js 1.9 kB
build/viewport/index.min.js 1.05 kB
build/warning/index.min.js 248 B
build/widgets/index.min.js 7.15 kB
build/widgets/style-rtl.css 1.16 kB
build/widgets/style.css 1.16 kB
build/wordcount/index.min.js 1.04 kB

compressed-size-action

@carolinan carolinan added the [Block] Post Author Affects the Post Author Block label Jan 27, 2022
@cbravobernal
Copy link
Contributor

cbravobernal commented Jan 27, 2022

Question:
How do I remove the "has-border-color" CSS class from blockProps, which is placed on the wrapper?
I read through the documentation for classnames and tried several things but was not able to remove it.

Not sure if it is the best way to do it. But if you add "__experimentalSkipSerialization": true, on border props. They should be not applied when you call useBlockProps();.

That way you can get border props (both classname and styles) by:

  • import { __experimentalGetBorderClassesAndStyles as getBorderClassesAndStyles } from '@wordpress/block-editor';
  • const borderProps = getBorderClassesAndStyles(attributes);
  • Then apply those props wherever you need them.

You have a similar approach on packages/block-library/build-module/button/edit.js

We did something similar to the Comment Author Avatar, feel free to check it, it was with spacing attributes:

@cbravobernal
Copy link
Contributor

I've also added here a "post featured image block" like to show the Comment Avatar placeholder if we want to have it similar. Done in PR #38072

Screenshot 2022-01-27 at 15 06 00

e5127d7

@carolinan carolinan marked this pull request as ready for review January 28, 2022 06:35
@carolinan
Copy link
Contributor Author

@c4rl0sbr4v0 Thank you for the help! I think it is solved now. I added __experimentalSkipSerialization to the border in block.json and then found the solution for re-adding the border attributes in the code for the search block.

I tested using the placeholder SVG; but found that on my install it was never visible. I am not sure how to measure it, but perhaps the svg takes so long to load that the correct image is displayed just as fast.
So I switched back to showing the placeholder text only.

@carolinan
Copy link
Contributor Author

carolinan commented Jan 28, 2022

I would like to avoid the two stylesheets, if there are better ways to solve the left and right margins that are not working in the editor without the CSS.

I feel like being able to adjust the spacing will be important for creating different layouts together with the author name and biography blocks.

@carolinan carolinan changed the title WIP: Add post author avatar block Add post author avatar block Jan 28, 2022
@cbravobernal
Copy link
Contributor

Great job! I will take this PR as a reference for the comments too 🚀

Sorry, I don't completely understand the issue with SVG you mention. 🙇

I tested using the placeholder SVG; but found that on my install it was never visible. I am not sure how to measure it, but perhaps the svg takes so long to load that the correct image is displayed just as fast. So I switched back to showing the placeholder text only.

We could make that square only with plain CSS if it is faster than a SVG. Also, we need to add this CSS to the SVG parent dom element in order to be shown:

stroke: currentColor;
stroke-dasharray: 3;

the correct image is displayed just as fast

Do you mean the real post author avatar?

@carolinan
Copy link
Contributor Author

the correct image is displayed just as fast

Do you mean the real post author avatar?

Yes.

@cbravobernal
Copy link
Contributor

the correct image is displayed just as fast

Do you mean the real post author avatar?

Yes.

In that case, the main issue we have, is that if we go to the Site Editor -> Single Post. We cannot give styles to a text placeholder. (screenshot attached)

Screenshot 2022-01-28 at 12 08 09

@jameskoster mentioned the idea of displaying a default avatar, I'm still checking if that would mean to do a request to the REST API to fetch that information. Will keep you posted here as well!

@carolinan
Copy link
Contributor Author

The author avatar has a fallback image already if the user has not set up an avatar at gravatar.
The text that is displayed before the avatar loads does not need to be customizable because it displays for 1-2 seconds (on my connection). It only flashes.

@carolinan carolinan closed this Jan 28, 2022
@carolinan carolinan reopened this Jan 28, 2022
@cbravobernal
Copy link
Contributor

cbravobernal commented Jan 28, 2022

it displays for 1-2 seconds (on my connection). It only flashes.

At least, this is also happening on Comments Avatar Author on some template parts edition, and also inside any post or page 😅

But, I recorded a screen video where when you edit the Single Post template on the Site Editor, it does not display an avatar, just the text placeholder.

Screen.Recording.2022-01-28.at.14.26.19.mov

@carolinan
Copy link
Contributor Author

Would it be acceptable for the placeholder to keep the .4 opacity? It affects the border color option but only in the editor, so it doesn't match the front.

Or would it be better if the placeholder respected the border color option, but looked different from all the other placeholders that use .4 opacity?

@carolinan
Copy link
Contributor Author

carolinan commented Jan 31, 2022

Left: Editor, various settings. Right: front.
Here the difference in opacity is visible.

For some reason, the front is displaying an avatar from an existing user (from the imported theme test data).
It is not the logged in user, and it is also not the author of the first post in the post list (I used the index template for the test and it did have a query loop below the avatars. The avatars are not placed in the query loop.) 🤔

avatar placeholders with different borders in the editor, and the same block on the front.

@cbravobernal
Copy link
Contributor

Or would it be better if the placeholder respected the border color option, but looked different from all the other placeholders that use .4 opacity?

I guess the best option is always to keep consistency between editor and frontend. So in this case would be better to remove that opacity. That will also happen to comments author's avatar.

@carolinan
Copy link
Contributor Author

I am trying to troubleshoot why the avatar is displaying an actual user avatar on the front, for pages that are not single post type templates.

  1. Install the theme test data
  2. Open the index template in the site editor and add a post author avatar block without a container. See the placeholder in the editor.
  3. View the front. Here, I am seeing the avatar for the user "themedemos" with the display name "Theme buster".

At this point, I added a var_dump() of the post id and author id inside the blocks index.php file.
I expected both these values to not be set since it is not a single post type.
The result is the post and author id of the "Template: Sticky" post from the theme test data.

  1. Delete the query loop in the index. Save and view the front. The avatar, post id and author id are still the same.

@carolinan
Copy link
Contributor Author

Perhaps its a non issue if the blocks will be limited to a parent post author block.

@jameskoster
Copy link
Contributor

Compared to the comment avatar I opted out of padding and background color because I did not see how the background color would be used with this block.

Shouldn't they be consistent? Padding and background enable you to create things like this:

Screenshot 2022-02-07 at 11 01 27

IE some spacing around the image and a border.

@carolinan
Copy link
Contributor Author

I was not able to get that to work with the resizer.

@carolinan
Copy link
Contributor Author

carolinan commented Feb 7, 2022

Anyway I am hesitant to do any more work on this until there is a final decision about if this is going to be separate block or a variation of the post comment avatar block, and what the new name will be and so on.

@jasmussen
Copy link
Contributor

For what it's worth, I think it's valuable to have a simple avatar block like this 👍 👍

@cbravobernal
Copy link
Contributor

cbravobernal commented Feb 7, 2022

Anyway I am hesitant to do any more work on this until there is a final decision about if this is going to be separate block or a variation of the post comment avatar block, and what the new name will be and so on.

@carolinan I will push at the end of the day a draft PR of a first iteration. I'm comparing and taking code from both Comment and Post, and will be happy to share the development, meaning you can commit without any hesitation, your experience is kindly appreciated 😄

@carolinan
Copy link
Contributor Author

Closed in favor of #38591

@carolinan carolinan closed this Mar 25, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
[Block] Post Author Affects the Post Author Block New Block Suggestion for a new block
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Post Author Block: Inconsistent Front/Back End Avatar Markup and Classes
4 participants