{"id":68697,"date":"2024-07-09T10:22:10","date_gmt":"2024-07-09T06:52:10","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/creating-modals-in-react-a-comprehensive-guide-to-opening-elements-in-modals-49j1\/"},"modified":"2024-07-09T10:22:10","modified_gmt":"2024-07-09T06:52:10","slug":"creating-modals-in-react-a-comprehensive-guide-to-opening-elements-in-modals-49j1","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/creating-modals-in-react-a-comprehensive-guide-to-opening-elements-in-modals-49j1\/","title":{"rendered":"\u0627\u06cc\u062c\u0627\u062f Modals \u062f\u0631 React: \u0631\u0627\u0647\u0646\u0645\u0627\u06cc \u062c\u0627\u0645\u0639 \u0628\u0631\u0627\u06cc \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u0639\u0646\u0627\u0635\u0631 \u062f\u0631 Modals"},"content":{"rendered":"<p>Summarize this content to 400 words in Persian Lang<br \/>\n            \u0645\u0639\u0631\u0641\u06cc\u0645\u062f\u0627\u0644 \u0647\u0627 \u0628\u062e\u0634 \u0645\u0647\u0645\u06cc \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0648\u0628 \u0647\u0633\u062a\u0646\u062f \u0648 \u0631\u0627\u0647\u06cc \u0628\u0631\u0627\u06cc \u0646\u0645\u0627\u06cc\u0634 \u0645\u062d\u062a\u0648\u0627 \u062f\u0631 \u0635\u0641\u062d\u0647 \u0641\u0639\u0644\u06cc \u0628\u062f\u0648\u0646 \u067e\u06cc\u0645\u0627\u06cc\u0634 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u0646\u062f.  \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0645\u0631\u0627\u062d\u0644 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u062f\u0627\u0644 \u062f\u0631 React \u0631\u0627\u0647\u0646\u0645\u0627\u06cc\u06cc \u0645\u06cc \u06a9\u0646\u062f\u060c \u0627\u0632 \u062c\u0645\u0644\u0647 \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 React Portal \u0628\u0631\u0627\u06cc \u0631\u0646\u062f\u0631 \u06a9\u0631\u062f\u0646 \u0645\u062f\u0627\u0644 \u0647\u0627 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0645\u0627\u06cc\u0627\u0646 \u0628\u0648\u062f\u0646 \u0622\u0646\u0647\u0627 \u0628\u0627 \u062d\u0627\u0644\u062a.  \u062f\u0631 \u067e\u0627\u06cc\u0627\u0646 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u062f\u0627\u0644 \u0647\u0627\u06cc\u06cc \u0631\u0627 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0639\u0646\u0627\u0635\u0631 \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u0648\u06cc\u0627 \u0628\u0627\u0632 \u06a9\u0646\u0646\u062f.<\/p>\n<p>\u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627\u0642\u0628\u0644 \u0627\u0632 \u0627\u06cc\u0646\u06a9\u0647 \u0648\u0627\u0631\u062f \u06a9\u062f \u0634\u0648\u06cc\u0645\u060c \u0645\u0637\u0645\u0626\u0646 \u0634\u0648\u06cc\u062f \u06a9\u0647 \u062f\u0631\u06a9 \u0627\u0648\u0644\u06cc\u0647 \u0627\u06cc \u0627\u0632 React \u0648 \u0627\u062c\u0632\u0627\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f\u06cc \u062f\u0627\u0631\u06cc\u062f.  \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0647\u0648\u06a9 \u0647\u0627 (useState\u060c useEffect) \u0645\u0641\u06cc\u062f \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f.<\/p>\n<p>\u0645\u0631\u062d\u0644\u0647 1: \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0631\u0648\u0698\u0647\u0627\u0628\u062a\u062f\u0627 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 React \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u06cc\u0627 \u0628\u0647 \u067e\u0631\u0648\u0698\u0647 \u0645\u0648\u062c\u0648\u062f \u062e\u0648\u062f \u0628\u0631\u0648\u06cc\u062f:<\/p>\n<p>npx create-react-app react-modal-tutorial<br \/>\ncd react-modal-tutorial<br \/>\nnpm start<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0645\u0631\u062d\u0644\u0647 2: \u0627\u06cc\u062c\u0627\u062f \u0645\u0624\u0644\u0641\u0647 Modal\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u062c\u062f\u06cc\u062f ModalPortal.js \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u0648 \u06a9\u062f \u0632\u06cc\u0631 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>import React, { useEffect } from &#8216;react&#8217;;<br \/>\nimport ReactDOM from &#8216;react-dom&#8217;;<\/p>\n<p>const ModalPortal = ({ open, children }) =&gt; {<br \/>\n  useEffect(() =&gt; {<br \/>\n    const rootElement = document.body;<br \/>\n    if (open) {<br \/>\n      rootElement.classList.add(&#8216;overlay&#8217;);<br \/>\n    } else {<br \/>\n      rootElement.classList.remove(&#8216;overlay&#8217;);<br \/>\n    }<br \/>\n  }, [open]);<\/p>\n<p>  if (!open) return null;<\/p>\n<p>  return ReactDOM.createPortal(<br \/>\n    {children},<br \/>\n    document.body<br \/>\n  );<br \/>\n};<\/p>\n<p>export default ModalPortal;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0645\u0631\u062d\u0644\u0647 3: \u0645\u062f\u0644 \u062f\u0627\u062f\u0646 \u0628\u0647 Modal\u062f\u0631 index.css \u06cc\u0627 \u06cc\u06a9 \u0641\u0627\u06cc\u0644 CSS \u062c\u062f\u0627\u06af\u0627\u0646\u0647\u060c \u0633\u0628\u06a9 \u0647\u0627\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>.modalContent {<br \/>\n  top: 50%;<br \/>\n  left: 50%;<br \/>\n  transform: translate(-50%, -50%);<br \/>\n  position: fixed;<br \/>\n  width: 100%;<br \/>\n  max-width: 500px;<br \/>\n  z-index: 300;<br \/>\n  overflow-y: auto;<br \/>\n  overflow-x: hidden;<br \/>\n}<\/p>\n<p>@media (max-width: 550px) {<br \/>\n  .modalContent {<br \/>\n    left: 15px;<br \/>\n    right: 15px;<br \/>\n  }<br \/>\n}<\/p>\n<p>.overlay {<br \/>\n  overflow: hidden;<br \/>\n}<\/p>\n<p>@screen maxLg {<br \/>\n  .overlay {<br \/>\n    transition: all 0.3s ease-in-out;<br \/>\n    width: 100%;<br \/>\n    height: 100%;<br \/>\n    position: fixed;<br \/>\n  }<br \/>\n  .overlay::before {<br \/>\n    content: &#8220;&#8221;;<br \/>\n    z-index: 1;<br \/>\n    background: rgba(0, 0, 0, 0.5);<br \/>\n    transition: all 0.3s ease-in-out;<br \/>\n    position: absolute;<br \/>\n    top: 0;<br \/>\n    left: 0;<br \/>\n    right: 0;<br \/>\n    bottom: 0;<br \/>\n  }<br \/>\n}<\/p>\n<p>.overlay:before {<br \/>\n  content: &#8220;&#8221;;<br \/>\n  background-color: rgba(0, 0, 0, 0.5);<br \/>\n  position: fixed;<br \/>\n  top: 0;<br \/>\n  left: 0;<br \/>\n  right: 0;<br \/>\n  bottom: 0;<br \/>\n  width: 100%;<br \/>\n  height: 100%;<br \/>\n  z-index: 200;<br \/>\n  backdrop-blur: 6px;<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0645\u0631\u062d\u0644\u0647 4: \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc Modal \u062f\u0631 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0634\u0645\u0627\u06cc\u06a9 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a\u060c App.js \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u0648 \u0627\u0632 ModalPortal \u0628\u0631\u0627\u06cc \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u06cc\u06a9 \u0645\u062f\u0627\u0644 \u0628\u0627 \u0645\u0642\u062f\u0627\u0631\u06cc \u0645\u062d\u062a\u0648\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>import React, { useState } from &#8216;react&#8217;;<br \/>\nimport ModalPortal from &#8216;.\/ModalPortal&#8217;;<\/p>\n<p>const App = () =&gt; {<br \/>\n  const [isModalOpen, setIsModalOpen] = useState(false);<\/p>\n<p>  const handleOpenModal = () =&gt; setIsModalOpen(true);<br \/>\n  const handleCloseModal = () =&gt; setIsModalOpen(false);<\/p>\n<p>  return (<\/p>\n<p>      Open Modal<\/p>\n<p>          Modal Title<br \/>\n          This is the modal content.<br \/>\n          Close<\/p>\n<p>  );<br \/>\n};<\/p>\n<p>export default App;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0645\u0631\u062d\u0644\u0647 5: \u0631\u0646\u062f\u0631 \u062f\u06cc\u0646\u0627\u0645\u06cc\u06a9 \u0639\u0646\u0627\u0635\u0631 \u062f\u0631 \u0645\u062f\u0627\u0644\u0628\u0631\u0627\u06cc \u0631\u0646\u062f\u0631 \u06a9\u0631\u062f\u0646 \u0639\u0646\u0627\u0635\u0631 \u0645\u062e\u062a\u0644\u0641 \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u0648\u06cc\u0627 \u062f\u0631 \u0645\u0648\u062f\u0627\u0644\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u062d\u062a\u0648\u0627 \u0631\u0627 \u062f\u0631 \u06a9\u0648\u062f\u06a9\u06cc \u0628\u0647 \u0645\u0624\u0644\u0641\u0647 ModalPortal \u0645\u0646\u062a\u0642\u0644 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>import React, { useState } from &#8216;react&#8217;;<br \/>\nimport ModalPortal from &#8216;.\/ModalPortal&#8217;;<\/p>\n<p>const App = () =&gt; {<br \/>\n  const [isModalOpen, setIsModalOpen] = useState(false);<br \/>\n  const [modalContent, setModalContent] = useState(null);<\/p>\n<p>  const handleOpenModal = (content) =&gt; {<br \/>\n    setModalContent(content);<br \/>\n    setIsModalOpen(true);<br \/>\n  };<br \/>\n  const handleCloseModal = () =&gt; setIsModalOpen(false);<\/p>\n<p>  return (<\/p>\n<p>       handleOpenModal(Content 1)}&gt;Open Modal with Content 1<br \/>\n       handleOpenModal(Content 2)}&gt;Open Modal with Content 2<\/p>\n<p>          Modal Title<br \/>\n          {modalContent}<br \/>\n          Close<\/p>\n<p>  );<br \/>\n};<\/p>\n<p>export default App;<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0646\u062a\u06cc\u062c\u0647\u062f\u0631 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634 \u0646\u062d\u0648\u0647 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u0648\u062f\u0627\u0644 \u062f\u0631 React \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 React Portal \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648\u0636\u0639\u06cc\u062a \u0622\u0646 \u0628\u0627 \u0642\u0644\u0627\u0628 \u0647\u0627 \u0631\u0627 \u062a\u0648\u0636\u06cc\u062d \u062f\u0627\u062f\u0647 \u0627\u06cc\u0645.  \u0645\u0627 \u0647\u0645\u0686\u0646\u06cc\u0646 \u06cc\u0627\u062f \u06af\u0631\u0641\u062a\u06cc\u0645 \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 \u0639\u0646\u0627\u0635\u0631 \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u0648\u06cc\u0627 \u062f\u0631 \u0645\u062f\u0627\u0644 \u0631\u0646\u062f\u0631 \u06a9\u0646\u06cc\u0645.  \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u06cc\u0646 \u062a\u06a9\u0646\u06cc\u06a9 \u0647\u0627\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0648\u0628 \u062e\u0648\u062f \u0631\u0627 \u0628\u0627 \u062a\u0631\u06a9\u06cc\u0628 \u0645\u062f\u0627\u0644 \u0647\u0627\u06cc \u062a\u0639\u0627\u0645\u0644\u06cc \u0648 \u067e\u0648\u06cc\u0627 \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u06cc\u062f.  \u06a9\u062f \u0646\u0648\u06cc\u0633\u06cc \u0645\u0628\u0627\u0631\u06a9!<\/p>\n<p>\u0645\u0646\u0627\u0628\u0639 \u0627\u0636\u0627\u0641\u06cc<\/p>\n<p>1. React Documentation<br \/>\n2. \u062a\u0631\u0641\u0646\u062f\u0647\u0627\u06cc CSS \u0628\u0631\u0627\u06cc Modals<br \/>\n3. React Portal<\/p>\n<div data-article-id=\"1916780\" id=\"article-body\">\n<p><strong>\u0645\u0639\u0631\u0641\u06cc<\/strong><br \/>\u0645\u062f\u0627\u0644 \u0647\u0627 \u0628\u062e\u0634 \u0645\u0647\u0645\u06cc \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0648\u0628 \u0647\u0633\u062a\u0646\u062f \u0648 \u0631\u0627\u0647\u06cc \u0628\u0631\u0627\u06cc \u0646\u0645\u0627\u06cc\u0634 \u0645\u062d\u062a\u0648\u0627 \u062f\u0631 \u0635\u0641\u062d\u0647 \u0641\u0639\u0644\u06cc \u0628\u062f\u0648\u0646 \u067e\u06cc\u0645\u0627\u06cc\u0634 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u0646\u062f.  \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0645\u0631\u0627\u062d\u0644 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u062f\u0627\u0644 \u062f\u0631 React \u0631\u0627\u0647\u0646\u0645\u0627\u06cc\u06cc \u0645\u06cc \u06a9\u0646\u062f\u060c \u0627\u0632 \u062c\u0645\u0644\u0647 \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 React Portal \u0628\u0631\u0627\u06cc \u0631\u0646\u062f\u0631 \u06a9\u0631\u062f\u0646 \u0645\u062f\u0627\u0644 \u0647\u0627 \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0646\u0645\u0627\u06cc\u0627\u0646 \u0628\u0648\u062f\u0646 \u0622\u0646\u0647\u0627 \u0628\u0627 \u062d\u0627\u0644\u062a.  \u062f\u0631 \u067e\u0627\u06cc\u0627\u0646 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u062f\u0627\u0644 \u0647\u0627\u06cc\u06cc \u0631\u0627 \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u0646\u062f \u0639\u0646\u0627\u0635\u0631 \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u0648\u06cc\u0627 \u0628\u0627\u0632 \u06a9\u0646\u0646\u062f.<\/p>\n<p><strong>\u067e\u06cc\u0634 \u0646\u06cc\u0627\u0632\u0647\u0627<\/strong><br \/>\u0642\u0628\u0644 \u0627\u0632 \u0627\u06cc\u0646\u06a9\u0647 \u0648\u0627\u0631\u062f \u06a9\u062f \u0634\u0648\u06cc\u0645\u060c \u0645\u0637\u0645\u0626\u0646 \u0634\u0648\u06cc\u062f \u06a9\u0647 \u062f\u0631\u06a9 \u0627\u0648\u0644\u06cc\u0647 \u0627\u06cc \u0627\u0632 React \u0648 \u0627\u062c\u0632\u0627\u06cc \u0639\u0645\u0644\u06a9\u0631\u062f\u06cc \u062f\u0627\u0631\u06cc\u062f.  \u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0647\u0648\u06a9 \u0647\u0627 (useState\u060c useEffect) \u0645\u0641\u06cc\u062f \u062e\u0648\u0627\u0647\u062f \u0628\u0648\u062f.<\/p>\n<p><strong>\u0645\u0631\u062d\u0644\u0647 1: \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u067e\u0631\u0648\u0698\u0647<\/strong><br \/>\u0627\u0628\u062a\u062f\u0627 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 React \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u06cc\u0627 \u0628\u0647 \u067e\u0631\u0648\u0698\u0647 \u0645\u0648\u062c\u0648\u062f \u062e\u0648\u062f \u0628\u0631\u0648\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>npx create-react-app react-modal-tutorial\ncd react-modal-tutorial\nnpm start\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><strong>\u0645\u0631\u062d\u0644\u0647 2: \u0627\u06cc\u062c\u0627\u062f \u0645\u0624\u0644\u0641\u0647 Modal<\/strong><br \/>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u062c\u062f\u06cc\u062f ModalPortal.js \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u0648 \u06a9\u062f \u0632\u06cc\u0631 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>import React, { useEffect } from 'react';\nimport ReactDOM from 'react-dom';\n\nconst ModalPortal = ({ open, children }) =&gt; {\n  useEffect(() =&gt; {\n    const rootElement = document.body;\n    if (open) {\n      rootElement.classList.add('overlay');\n    } else {\n      rootElement.classList.remove('overlay');\n    }\n  }, [open]);\n\n  if (!open) return null;\n\n  return ReactDOM.createPortal(\n    <p>{children}<\/p>,\n    document.body\n  );\n};\n\nexport default ModalPortal;\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><strong>\u0645\u0631\u062d\u0644\u0647 3: \u0645\u062f\u0644 \u062f\u0627\u062f\u0646 \u0628\u0647 Modal<\/strong><br \/>\u062f\u0631 index.css \u06cc\u0627 \u06cc\u06a9 \u0641\u0627\u06cc\u0644 CSS \u062c\u062f\u0627\u06af\u0627\u0646\u0647\u060c \u0633\u0628\u06a9 \u0647\u0627\u06cc \u0632\u06cc\u0631 \u0631\u0627 \u0627\u0636\u0627\u0641\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>.modalContent {\n  top: 50%;\n  left: 50%;\n  transform: translate(-50%, -50%);\n  position: fixed;\n  width: 100%;\n  max-width: 500px;\n  z-index: 300;\n  overflow-y: auto;\n  overflow-x: hidden;\n}\n\n@media (max-width: 550px) {\n  .modalContent {\n    left: 15px;\n    right: 15px;\n  }\n}\n\n.overlay {\n  overflow: hidden;\n}\n\n@screen maxLg {\n  .overlay {\n    transition: all 0.3s ease-in-out;\n    width: 100%;\n    height: 100%;\n    position: fixed;\n  }\n  .overlay::before {\n    content: \"\";\n    z-index: 1;\n    background: rgba(0, 0, 0, 0.5);\n    transition: all 0.3s ease-in-out;\n    position: absolute;\n    top: 0;\n    left: 0;\n    right: 0;\n    bottom: 0;\n  }\n}\n\n.overlay:before {\n  content: \"\";\n  background-color: rgba(0, 0, 0, 0.5);\n  position: fixed;\n  top: 0;\n  left: 0;\n  right: 0;\n  bottom: 0;\n  width: 100%;\n  height: 100%;\n  z-index: 200;\n  backdrop-blur: 6px;\n}\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><strong>\u0645\u0631\u062d\u0644\u0647 4: \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc Modal \u062f\u0631 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a \u0634\u0645\u0627<\/strong><br \/>\u06cc\u06a9 \u06a9\u0627\u0645\u067e\u0648\u0646\u0646\u062a\u060c App.js \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u0648 \u0627\u0632 ModalPortal \u0628\u0631\u0627\u06cc \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 \u06cc\u06a9 \u0645\u062f\u0627\u0644 \u0628\u0627 \u0645\u0642\u062f\u0627\u0631\u06cc \u0645\u062d\u062a\u0648\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>import React, { useState } from 'react';\nimport ModalPortal from '.\/ModalPortal';\n\nconst App = () =&gt; {\n  const [isModalOpen, setIsModalOpen] = useState(false);\n\n  const handleOpenModal = () =&gt; setIsModalOpen(true);\n  const handleCloseModal = () =&gt; setIsModalOpen(false);\n\n  return (\n    <div>\n      <button onclick=\"{handleOpenModal}\">Open Modal<\/button>\n      <modalportal open=\"{isModalOpen}\">\n        <div classname=\"modalContent\">\n          <div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"\u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a \u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/creating-modals-in-react-a-comprehensive-guide-to-opening-elements-in-modals-49j1\/#Modal_Title\" >Modal Title<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/creating-modals-in-react-a-comprehensive-guide-to-opening-elements-in-modals-49j1\/#Modal_Title-2\" >Modal Title<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"Modal_Title\"><\/span>Modal Title<span class=\"ez-toc-section-end\"><\/span><\/h2>\n          <p>This is the modal content.<\/p>\n          <button onclick=\"{handleCloseModal}\">Close<\/button>\n        <\/div>\n      <\/modalportal>\n    <\/div>\n  );\n};\n\nexport default App;\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><strong>\u0645\u0631\u062d\u0644\u0647 5: \u0631\u0646\u062f\u0631 \u062f\u06cc\u0646\u0627\u0645\u06cc\u06a9 \u0639\u0646\u0627\u0635\u0631 \u062f\u0631 \u0645\u062f\u0627\u0644<\/strong><br \/>\u0628\u0631\u0627\u06cc \u0631\u0646\u062f\u0631 \u06a9\u0631\u062f\u0646 \u0639\u0646\u0627\u0635\u0631 \u0645\u062e\u062a\u0644\u0641 \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u0648\u06cc\u0627 \u062f\u0631 \u0645\u0648\u062f\u0627\u0644\u060c \u0645\u06cc\u200c\u062a\u0648\u0627\u0646\u06cc\u062f \u0645\u062d\u062a\u0648\u0627 \u0631\u0627 \u062f\u0631 \u06a9\u0648\u062f\u06a9\u06cc \u0628\u0647 \u0645\u0624\u0644\u0641\u0647 ModalPortal \u0645\u0646\u062a\u0642\u0644 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight plaintext\"><code>import React, { useState } from 'react';\nimport ModalPortal from '.\/ModalPortal';\n\nconst App = () =&gt; {\n  const [isModalOpen, setIsModalOpen] = useState(false);\n  const [modalContent, setModalContent] = useState(null);\n\n  const handleOpenModal = (content) =&gt; {\n    setModalContent(content);\n    setIsModalOpen(true);\n  };\n  const handleCloseModal = () =&gt; setIsModalOpen(false);\n\n  return (\n    <div>\n      <button onclick=\"{()\"> handleOpenModal(<p>Content 1<\/p>)}&gt;Open Modal with Content 1<\/button>\n      <button onclick=\"{()\"> handleOpenModal(<p>Content 2<\/p>)}&gt;Open Modal with Content 2<\/button>\n      <modalportal open=\"{isModalOpen}\">\n        <p>\n          <h2><span class=\"ez-toc-section\" id=\"Modal_Title-2\"><\/span>Modal Title<span class=\"ez-toc-section-end\"><\/span><\/h2>\n          {modalContent}\n          <button onclick=\"{handleCloseModal}\">Close<\/button>\n        <\/p>\n      <\/modalportal>\n    <\/div>\n  );\n};\n\nexport default App;\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p><strong>\u0646\u062a\u06cc\u062c\u0647<\/strong><br \/>\u062f\u0631 \u0627\u06cc\u0646 \u0622\u0645\u0648\u0632\u0634 \u0646\u062d\u0648\u0647 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u0648\u062f\u0627\u0644 \u062f\u0631 React \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 React Portal \u0648 \u0645\u062f\u06cc\u0631\u06cc\u062a \u0648\u0636\u0639\u06cc\u062a \u0622\u0646 \u0628\u0627 \u0642\u0644\u0627\u0628 \u0647\u0627 \u0631\u0627 \u062a\u0648\u0636\u06cc\u062d \u062f\u0627\u062f\u0647 \u0627\u06cc\u0645.  \u0645\u0627 \u0647\u0645\u0686\u0646\u06cc\u0646 \u06cc\u0627\u062f \u06af\u0631\u0641\u062a\u06cc\u0645 \u06a9\u0647 \u0686\u06af\u0648\u0646\u0647 \u0639\u0646\u0627\u0635\u0631 \u0645\u062e\u062a\u0644\u0641 \u0631\u0627 \u0628\u0647 \u0635\u0648\u0631\u062a \u067e\u0648\u06cc\u0627 \u062f\u0631 \u0645\u062f\u0627\u0644 \u0631\u0646\u062f\u0631 \u06a9\u0646\u06cc\u0645.  \u0628\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u0627\u06cc\u0646 \u062a\u06a9\u0646\u06cc\u06a9 \u0647\u0627\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u062a\u062c\u0631\u0628\u0647 \u06a9\u0627\u0631\u0628\u0631\u06cc \u0627\u067e\u0644\u06cc\u06a9\u06cc\u0634\u0646 \u0648\u0628 \u062e\u0648\u062f \u0631\u0627 \u0628\u0627 \u062a\u0631\u06a9\u06cc\u0628 \u0645\u062f\u0627\u0644 \u0647\u0627\u06cc \u062a\u0639\u0627\u0645\u0644\u06cc \u0648 \u067e\u0648\u06cc\u0627 \u0627\u0641\u0632\u0627\u06cc\u0634 \u062f\u0647\u06cc\u062f.  \u06a9\u062f \u0646\u0648\u06cc\u0633\u06cc \u0645\u0628\u0627\u0631\u06a9!<\/p>\n<p><strong>\u0645\u0646\u0627\u0628\u0639 \u0627\u0636\u0627\u0641\u06cc<\/strong><\/p>\n<ul>\n<li>1. React Documentation<\/li>\n<li>2. \u062a\u0631\u0641\u0646\u062f\u0647\u0627\u06cc CSS \u0628\u0631\u0627\u06cc Modals<\/li>\n<li>3. React Portal<\/li>\n<\/ul><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summarize this content to 400 words in Persian Lang \u0645\u0639\u0631\u0641\u06cc\u0645\u062f\u0627\u0644 \u0647\u0627 \u0628\u062e\u0634 \u0645\u0647\u0645\u06cc \u0627\u0632 \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0648\u0628 \u0647\u0633\u062a\u0646\u062f \u0648 \u0631\u0627\u0647\u06cc \u0628\u0631\u0627\u06cc \u0646\u0645\u0627\u06cc\u0634 \u0645\u062d\u062a\u0648\u0627 \u062f\u0631 \u0635\u0641\u062d\u0647 \u0641\u0639\u0644\u06cc \u0628\u062f\u0648\u0646 \u067e\u06cc\u0645\u0627\u06cc\u0634 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u0646\u062f. \u0627\u06cc\u0646 \u0631\u0627\u0647\u0646\u0645\u0627 \u0634\u0645\u0627 \u0631\u0627 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0645\u0631\u0627\u062d\u0644 \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0645\u062f\u0627\u0644 \u062f\u0631 React \u0631\u0627\u0647\u0646\u0645\u0627\u06cc\u06cc \u0645\u06cc \u06a9\u0646\u062f\u060c \u0627\u0632 \u062c\u0645\u0644\u0647 \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 React Portal \u0628\u0631\u0627\u06cc &hellip;<\/p>\n","protected":false},"author":2,"featured_media":68698,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-68697","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/68697","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=68697"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/68697\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/68698"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=68697"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=68697"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=68697"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}