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

ブログカードブロック 追加 #1778

Merged
merged 50 commits into from
Sep 4, 2023
Merged

Conversation

shimotmk
Copy link
Contributor

@shimotmk shimotmk commented Aug 1, 2023

チケットへのリンク / 変更の理由(元のissueがあればリンクを貼り付ければOK)

#749

どういう変更をしたか?

実装方法はコアのqueryブロックとembedブロックの融合みたいな感じです。
https://github.com/WordPress/gutenberg/tree/abfe3c6013bb811a0f5bf9d61a62c709c81c80c3/packages/block-library/src/query
https://github.com/WordPress/gutenberg/tree/2653b5e4f29c703a7ea52ebdc62dc254e4dc1dae/packages/block-library/src/embed

Blog Cardブロックの中のブロックも基本的にはコアブロックをベースに作っています。
・Blog Card Excerpt
https://github.com/WordPress/gutenberg/tree/259c8e7f2f94dfbe8957e3053841e4ecb083ec80/packages/block-library/src/post-excerpt

・Blog Card Featured Image
https://github.com/WordPress/gutenberg/tree/4f6d1b39350f31e242a573da64dea93175beaa74/packages/block-library/src/post-featured-image

・Blog Card Site Logo
https://github.com/WordPress/gutenberg/tree/12f305ece929393fc246544b03f7881e8a0923a1/packages/block-library/src/site-logo

・Blog Card Site Title
https://github.com/WordPress/gutenberg/tree/5ba748472b3e481e89ec3ac4c4e215031cc1eb3c/packages/block-library/src/site-title

・Blog Card Title
https://github.com/WordPress/gutenberg/tree/fec05ee8451ee1a8da43cdbf00485736e2b0a16a/packages/block-library/src/post-title

実装者の確認事項

実装者はレビュワーに回す前に以下の事を確認してチェックをつけてください。

  • 複数の意図の変更 ( 機能の不具合修正 + 別の機能追加など ) を含んでいないか?
  • Files changed (変更ファイル)の内容は目視で確認したか?
  • readme.txt に変更内容は書いたか?
  • 本当にちゃんと確認をしたか?

プログラムの変更の場合

テストを書かないのは普通ではありません。書けるテストは極力書くようにしてください。

  • 書けそうなテストは書いたか?

変更内容について何を確認したか、どういう方法で確認をしたかなど

実装者が確認した手順を箇条書きで記載してください。

  • レビュー確認方法と同様です。

確認URL

( どこかのデモサイトかテストサーバーにデプロイ済みなどで確認できる場合はそのURL )

レビュワーに回す前の確認事項

  • 実装者はこのテンプレートのチェック項目をちゃんと確認してチェックしたか?

レビュワー確認方法・確認内容など

レビュワーがどういう手順で何を確認して欲しいかを記載してください。

  • ブログカードブロックを配置してURLを入れ各種ブロックの設定がエディター,フロントに反映される。
  • 少なくとも以下の3つのケースの動作確認お願いします。リンクは何でも構わないです。
    ・適当な投稿
    ・埋め込み可能な外部リンク
    https://vektor-inc.co.jp
    ・埋め込み不可能な外部リンク
    https://github.com/vektor-inc/vk-blocks-pro/blob/master/vk-blocks.php
  • 翻訳は別ブランチで行います
  • 実装方法はコメントをなるべく残しました

レビュワー向け

レビュワーが確認して変更が反映されていない場合の確認事項

レビューしてみて意図した動作をしない場合は再度ビルドするなど以下の項目を確認してください。

  • プルしたか?
  • ビルドしたか?
  • ビルドしたディレクトリは正しいか(別の開発環境のディレクトリを見ていないか)?
  • npm install したか?
  • composer install したか?
  • キャッシュをクリアして確認したか?

shimotmk and others added 20 commits August 3, 2023 13:58
html false reuseable false
インナーブロックを再利用ブロックにすると置換が行われないので修正
再利用ブロックが含まれたページで置換がおかしくなるバグ修正
パフォーマンス上問題なかったので内部リンクはキャッシュ機能を使わない
decodeEntities
decodeEntities
一旦テスト解除
一旦テスト解除
phpunit test
phpunit test
phpunit test
phpunit test
phpunit test
余計なattributesを削除
"default": ""
}
},
"providesContext": {
Copy link
Contributor Author

@shimotmk shimotmk Aug 30, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

*
* @param {Object} attributes The block's attributes.
*/
export function useScopedBlockVariations(attributes) {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

* @param {string} url The URL that could not be embedded.
* @param {Function} onReplace Function to call with the created fallback block.
*/
export function fallback(url, onReplace) {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

* @param string $url The URL for which to build a cache key.
* @return string The cache key.
*/
public static function build_cache_key_for_url( $url ) {
Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"wide", "full" supports
@shimotmk shimotmk changed the title 【WIP】ブログカードブロック 追加 【確認待ち】ブログカードブロック 追加 Aug 31, 2023
@shimotmk shimotmk marked this pull request as ready for review August 31, 2023 00:34
@sysbird sysbird changed the title 【確認待ち】ブログカードブロック 追加 【確認中】ブログカードブロック 追加 Sep 1, 2023
@sysbird
Copy link
Member

sysbird commented Sep 1, 2023

@shimotmk

確認中です
便利ですね、こういうブロック欲しかったです!
issue の過程で確認しておらず恐縮ですが、私が気になった点あげます

  • サイトアイコンとサイト名に段差が出ています。
    Lightning のときだけなので、テーマによって段落のマージン付け方が異なるためでしょうか。あらかじめ段落(サイト名)の上下0 にしてもらええるとよいかな?と思います
    ですが自分で調節可能ですので、ユーザーが設定すればよい仕様でしょうかね?

blog-card-2

  • 配置を選ぶとき、感覚的に左右逆がよいのかな?と思いました

blog-card-1

  • Issue にあった「タブでも開ける」との設定方法がわかりませんでした。教えてください〜

@shimotmk
Copy link
Contributor Author

shimotmk commented Sep 1, 2023

@sysbird
ありがとうございます!

@shimotmk

確認中です 便利ですね、こういうブロック欲しかったです! issue の過程で確認しておらず恐縮ですが、私が気になった点あげます

  • サイトアイコンとサイト名に段差が出ています。
    Lightning のときだけなので、テーマによって段落のマージン付け方が異なるためでしょうか。あらかじめ段落(サイト名)の上下0 にしてもらええるとよいかな?と思います
    ですが自分で調節可能ですので、ユーザーが設定すればよい仕様でしょうかね?

blog-card-2

そうですね。これはこのブロックだけ調整しても根本的な問題解決になっていないので下手に対応しないほうが良いと思います。
例えば以下の様なパターンで同じ状況です。
サイトアイコン、抜粋、記事タイトル等はDBから取得しているので設定してください

サンプルコード。ここをクリック。
<!-- wp:columns {"style":{"spacing":{"padding":{"top":"1.5rem","right":"1.5rem","bottom":"1.5rem","left":"1.5rem"},"blockGap":{"top":"1.5rem","left":"1.5rem"}},"border":{"color":"#0000001f","width":"1px","radius":"5px"}}} -->
<div class="wp-block-columns has-border-color" style="border-color:#0000001f;border-width:1px;border-radius:5px;padding-top:1.5rem;padding-right:1.5rem;padding-bottom:1.5rem;padding-left:1.5rem"><!-- wp:column {"verticalAlignment":"top","width":"33.3%"} -->
<div class="wp-block-column is-vertically-aligned-top" style="flex-basis:33.3%"><!-- wp:image {"align":"center","sizeSlug":"large","linkDestination":"custom","style":{"border":{"color":"#0000001f","width":"1px","radius":"5px"}}} -->
<figure class="wp-block-image aligncenter size-large has-custom-border"><a href="https://www.vektor-inc.co.jp/wp-content/uploads/2020/04/vecktor-inc_ogp2020.png"><img src="https://www.vektor-inc.co.jp/wp-content/uploads/2020/04/vecktor-inc_ogp2020.png" alt="" class="has-border-color" style="border-color:#0000001f;border-width:1px;border-radius:5px"/></a></figure>
<!-- /wp:image --></div>
<!-- /wp:column -->

<!-- wp:column {"width":"66.6%"} -->
<div class="wp-block-column" style="flex-basis:66.6%"><!-- wp:heading {"level":5} -->
<h5 class="wp-block-heading"><a href="https://www.vektor-inc.co.jp/">株式会社ベクトル | WordPressテーマ・プラグイン開発のクリエイティブカンパニー</a></h5>
<!-- /wp:heading -->

<!-- wp:paragraph -->
<p>抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル抜粋サンプル粋抜</p>
<!-- /wp:paragraph -->

<!-- wp:group {"style":{"spacing":{"blockGap":"6px"}},"layout":{"type":"flex","flexWrap":"nowrap","verticalAlignment":"center"}} -->
<div class="wp-block-group"><!-- wp:image {"sizeSlug":"large","style":{"layout":{"selfStretch":"fixed","flexSize":"15px"}}} -->
<figure class="wp-block-image size-large"><img src="https://www.vektor-inc.co.jp/wp-content/uploads/2020/03/cropped-icon2020-32x32.png" alt=""/></figure>
<!-- /wp:image -->

<!-- wp:paragraph -->
<p><a href="https://www.vektor-inc.co.jp/">株式会社ベクトル</a></p>
<!-- /wp:paragraph --></div>
<!-- /wp:group --></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->

<!-- wp:columns {"style":{"spacing":{"padding":{"top":"1.5rem","right":"1.5rem","bottom":"1.5rem","left":"1.5rem"},"blockGap":{"top":"1.5rem","left":"1.5rem"}},"border":{"color":"#0000001f","width":"1px","radius":"5px"}}} -->
<div class="wp-block-columns has-border-color" style="border-color:#0000001f;border-width:1px;border-radius:5px;padding-top:1.5rem;padding-right:1.5rem;padding-bottom:1.5rem;padding-left:1.5rem"><!-- wp:column {"verticalAlignment":"top","width":"33.3%"} -->
<div class="wp-block-column is-vertically-aligned-top" style="flex-basis:33.3%"><!-- wp:post-featured-image {"style":{"border":{"color":"#0000001f","width":"1px","radius":"5px"}}} /--></div>
<!-- /wp:column -->

<!-- wp:column {"width":"66.6%"} -->
<div class="wp-block-column" style="flex-basis:66.6%"><!-- wp:post-title {"level":5} /-->

<!-- wp:post-excerpt /-->

<!-- wp:group {"style":{"spacing":{"blockGap":"6px"}},"layout":{"type":"flex","flexWrap":"nowrap","verticalAlignment":"center"}} -->
<div class="wp-block-group"><!-- wp:site-logo {"width":20} /-->

<!-- wp:site-title {"level":0} /--></div>
<!-- /wp:group --></div>
<!-- /wp:column --></div>
<!-- /wp:columns -->

<!-- wp:vk-blocks/blog-card {"url":"https://www.vektor-inc.co.jp/","style":{"spacing":{"padding":{"top":"1.5rem","right":"1.5rem","bottom":"1.5rem","left":"1.5rem"}},"border":{"color":"#0000001f","width":"1px","radius":"5px"}}} -->
<div class="wp-block-vk-blocks-blog-card has-border-color" style="border-color:#0000001f;border-width:1px;border-radius:5px;padding-top:1.5rem;padding-right:1.5rem;padding-bottom:1.5rem;padding-left:1.5rem"><!-- wp:columns {"lock":{"move":false,"remove":true},"style":{"spacing":{"blockGap":{"top":"1.5rem","left":"1.5rem"}}}} -->
<div class="wp-block-columns"><!-- wp:column {"verticalAlignment":"top","width":"33.3%"} -->
<div class="wp-block-column is-vertically-aligned-top" style="flex-basis:33.3%"><!-- wp:vk-blocks/blog-card-featured-image {"style":{"border":{"color":"#0000001f","width":"1px","radius":"5px"}}} /--></div>
<!-- /wp:column -->

<!-- wp:column {"width":"66.6%","lock":{"move":false,"remove":true}} -->
<div class="wp-block-column" style="flex-basis:66.6%"><!-- wp:vk-blocks/blog-card-title /-->

<!-- wp:vk-blocks/blog-card-excerpt /-->

<!-- wp:group {"style":{"spacing":{"blockGap":"6px"}},"layout":{"type":"flex","flexWrap":"nowrap","verticalAlignment":"center"}} -->
<div class="wp-block-group"><!-- wp:vk-blocks/blog-card-site-logo {"style":{"layout":{"selfStretch":"fixed","flexSize":"15px"}}} /-->

<!-- wp:vk-blocks/blog-card-site-title /--></div>
<!-- /wp:group --></div>
<!-- /wp:column --></div>
<!-- /wp:columns --></div>
<!-- /wp:vk-blocks/blog-card -->

  • 配置を選ぶとき、感覚的に左右逆がよいのかな?と思いました

blog-card-1

確かに、ブロックアイコンは左画像なので配置を変えておきました!


  • Issue にあった「タブでも開ける」との設定方法がわかりませんでした。教えてください〜

自分も詳しくはわかりませんでした。
新しいタブで開くことを言っているのかなと予想しました
target

@sysbird
Copy link
Member

sysbird commented Sep 1, 2023

@shimotmk
配置の左右入れ替えてもらってありがとうございます!

サイトタイトルのマージンは承知しました
配置によってもマージン入れたい箇所が異なりますしね、ユーザーが設定すればよいかと

「新しいタブで開く」設定ありました〜
こちらも便利ですね
ブロック全体の設定と思い込んでましたが、パーツごとの設定になるんですね
(たぶんリンクが何箇所かあって、サイトへのリンクもあるから?)

ここまで動作問題ないと思いますので、どなたか2人目ご確認をお願いします

@sysbird sysbird changed the title 【確認中】ブログカードブロック 追加 【2人め確認待ち】ブログカードブロック 追加 Sep 1, 2023
Copy link
Contributor

@osmdik osmdik left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

確認しました。
使いやすいですし、動作も問題ないと思います。
マージします。

@osmdik osmdik changed the title 【2人め確認待ち】ブログカードブロック 追加 ブログカードブロック 追加 Sep 4, 2023
@osmdik osmdik merged commit 6318d47 into develop Sep 4, 2023
@osmdik osmdik deleted the try/add/blog-card-block branch September 4, 2023 07:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants