Support » Developing with WordPress » Dynamic Timezone Based on User’s Device & Location

  • I would like my site to set a timezone based on the user’s device timezone (preferred) or based on IP address or both options available.

    Currently, WordPress’s general setting has the ability to set a fixed timezone but I would like to make it dynamic depending on the user’s device timezone. How can I do this? Thanks

    The page I need help with: [log in to see the link]

Viewing 5 replies - 1 through 5 (of 5 total)
  • Hi @mohsinworld

    There is a plugin that could help you:

    https://wordpress.org/plugins/use-clients-time-zone/

    Hope it helps!

    Thread Starter Mohsin Alam

    (@mohsinworld)

    @cbravobernal Did you use that plugin? Does this work accurately?

    @mohsinworld
    Well, it doesn’t set the timezone as a WordPress setting but makes all the PHP date and time functions work with the user timezone, set as a cookie.

    I’m not 100% sure if it will suit your requirements, feel free to test it in your local or in your development environment!

    • This reply was modified 1 week, 5 days ago by Carlos Bravo.
    • This reply was modified 1 week, 5 days ago by Carlos Bravo.
    Thread Starter Mohsin Alam

    (@mohsinworld)

    It didn’t work for me. I’ll do some more tests. I would like WordPress to do this by the core system. Thanks

    Moderator bcworkz

    (@bcworkz)

    You can use the filter “option_timezone_string” to alter what WP thinks is its timezone. The string can be a time offset like '+02:00'. It needn’t be a name string like “America/Denver”. You’d need some sort of API or data table that returns an appropriate timezone or offset for any given IP. Note that IP geolocation is often not representative of a user’s actual location, so the timezone so returned may not be entirely accurate.

    Returning an accurate time is further complicated by daylight/summer time shifts that change on varying dates, if they occur at all. If you are able to use named timezones, I believe the DateTinme object created can account for these shifts, but I’not 100% sure.

Viewing 5 replies - 1 through 5 (of 5 total)
  • You must be logged in to reply to this topic.