I don't think "static pinning" and "dynamic pinning" are well-known or well-defined terms.
Certificate pinning restricts which certificates to trust by configuring several keys of trusted certificates in the client. The trusted certificates are typically compiled into the app and shipped with the app. This would be "static pinning". The advantage is that the delivery of the configured certificates is secure. The disadvantage is that when the certificate of the server changes, everybody has to install a new version of the app. If users don't update their app, it stops working as it no longer trusts the new certificate of the server.
To bypass this last problem, some apps can update their configuration dynamically. They retrieve the configuration with trusted certificates from the server. This would be called "dynamic pinning". The advantage is that the developers now have greater control over which certificates are trusted without requiring everyone to update their app. The disadvantage is that this introduces some chicken-and-egg problem. When someone has the old configuration (or no configuration at all yet), they cannot securely retrieve the new configuration from the server if the server already uses the new certificate.
With static pinning, reversing the app can expose the pinned certificates. Dynamic pinning makes it harder to extract expected certificates.
The pinned certificates are not secret. Their integrity needs to be protected, not their confidentiality. With dynamic pinning, the configuration is presumably transferred in a HTTPS request. If the response can be modified, an attacker can configure their own cerfificate as trusted.
Static pins remain constant allowing them to be bypassed once identified.
This is incorrect. Knowing a pinned key does not make it easier or harder to bypass it.
Dynamic pins change frequently to thwart this.
In my experience, "frequently" here means once every 30 days, at least.
Dynamic pinning can retrieve certs on-demand.
The article seems to assume that the certificates to trust are retrieved over a connection that does not use pinning. So the app retrieves the configuration without pinning, and then applies pinning to subsequent connections. Off course, this severely reduces the security of pinning, as the attacker can modify the response to the configuration request to trust their own certificate.