Creating a widget that displays the content of a page

If you hard-coded your custom query directly in the page template, then you’re going to need to duplicate that custom query in a custom Widget.

On the other hand, if you’ve abstracted the custom query (either into a template-part file, or better yet, a custom function), then you can simply include the template-part file or custom function in your custom Widget.