# post-carousel/4.0.7/src/hooks/usePaginationSelect.js

Smart Post – Post Grid, Post Carousel, Post Slider Gutenberg Blocks for Blog &amp; News, version 4.0.7. 27 lines.

- Page: https://pluginprobe.com/plugins/post-carousel/4.0.7/code/src/hooks/usePaginationSelect.js
- Raw: https://pluginprobe.com/plugins/post-carousel/4.0.7/raw/src/hooks/usePaginationSelect.js
- Modified: 2026-04-24T11:48:54+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/post-carousel/4.0.7/code/src/hooks/usePaginationSelect.js#L10-L20`.

```javascript
import { useDispatch, useSelect } from "@wordpress/data";
import { store as blockEditorStore } from "@wordpress/block-editor";
import { useEffect } from "@wordpress/element";

export const useSelectChildBlock = (parentClientId) => {
	const { updateBlockAttributes } = useDispatch(blockEditorStore);

	const innerBlocks = useSelect(
		(select) => select(blockEditorStore).getBlock(parentClientId)?.innerBlocks || [],
		[parentClientId]
	);

	const { paginationType, navigationArrowPosition } = innerBlocks[0]?.attributes || {};

	useEffect(() => {
		if (innerBlocks.length === 0) {
			return;
		}
		if (paginationType && navigationArrowPosition) {
			updateBlockAttributes(parentClientId, {
				paginationTypeParent: paginationType,
				paginationPosition: navigationArrowPosition,
			});
		}
	}, [paginationType, navigationArrowPosition, parentClientId, innerBlocks]);
};

```
