விளக்கம்
WAQTUNA adds prayer time widgets to your WordPress site through simple shortcodes. It is built for mosques and Islamic centers that want accurate, maintainable prayer times without manual daily updates.
Prayer times are loaded from the vaktija.eu API. Choose a location in the admin, and times are fetched and cached automatically. You can also import a CSV file as the primary source or as a fallback when the API is unavailable.
This plugin is not affiliated with vaktija.eu. It uses their public API as a data source.
Features
- Full prayer times widget with Gregorian and Hijri dates, plus key Islamic dates (Eid, Jumu’ah, Laylat al-Qadr, and more on the Hijri calendar)
- Next prayer widget with live countdown
- Location picker connected to api.vaktija.eu
- WordPress timezone check on the Location tab (warns when site time does not match the selected city)
- CSV import as an alternative or fallback data source
- Custom congregation times (Fajr Jamah, Jumuah summer/winter, Isha/Tarawih)
- Multiple layouts: grid, list, compact grid, and compact list
- Responsive layouts: set a different layout for mobile, tablet, and desktop
- Light, dark, and system theme modes
- Custom labels, Hijri month names, and weekday names — with primary and optional secondary language overrides for bilingual sites
- Highlight colors and optional background patterns
- Masjid full-screen display for TV and kiosk screens with orientation and rotation support
- Monthly prayer timetables (Gregorian or Hijri month) with logo, heading, overlapping month(s) from the other calendar, Islamic key dates column (desktop/print), up to 3 footer text lines, print, and PNG export
- Custom background image fit and opacity for widget and masjid display
- Translation-ready; language packs are provided via WordPress translations (translate.wordpress.org). English defaults when no language pack is installed
Shortcodes
[waqtuna_prayer_times] — full prayer times display with date navigation.
[waqtuna_prayer_times date="2026-09-17"] — show prayer times for a specific date.
[waqtuna_next_prayer] — show the next upcoming prayer.
[waqtuna_next_prayer style="compact"] — compact next-prayer display.
[waqtuna_prayer_times style="masjid"] — full-screen masjid display for TV or kiosk screens.
[waqtuna_prayer_times style="masjid" orientation="vertical" rotation="90-right"] — portrait TV with 90° clockwise rotation.
[waqtuna_prayer_times style="gregorian-month"] — full-month timetable for the current Gregorian month.
[waqtuna_prayer_times style="hijri-month"] — full-month timetable for the current Hijri month.
[waqtuna_prayer_times style="gregorian-month" month="4" year="2026"] — optional month and year attributes for monthly views.
External services
This plugin connects to the vaktija.eu API at https://api.vaktija.eu/v3 to obtain location lists and daily prayer times. This is required when the API data source is enabled and the frontend widget loads or changes dates.
Data sent: selected location ID and requested Gregorian date. No WordPress user accounts, personal data, or site credentials are transmitted.
Requests are made over HTTPS when an administrator selects or refreshes a location, when the widget is first rendered, and when visitors change the date in the widget. If the API is unavailable and CSV import is configured, the plugin can use locally stored CSV data instead.
Service provider: vaktija.eu (third-party prayer times API; not affiliated with this plugin).
Terms of use: https://vaktija.eu/
Privacy policy: https://vaktija.eu/ (contact the service operator for current privacy information)
Hijri dates are calculated locally using an embedded Umm al-Qura month table (1990–2040). Dates outside that range fall back to PHP intl when available.
Credits
Prayer time data provided by vaktija.eu.
Month timetable PNG export uses the bundled html-to-image library (MIT license, ~20 KB). It runs in the browser only when a visitor uses Save as image on a monthly timetable. No additional npm or Composer packages are required on the server.
Screenshots




Installation
- Upload the plugin folder to
/wp-content/plugins/waqtuna-prayer-times, or install the zip under Plugins Add New Upload Plugin. - Activate the plugin through the Plugins menu in WordPress.
- Open WAQTUNA Location, select your country and location, and save.
- If the Location tab shows a timezone warning, set Settings General Timezone to match your city (prayer times from vaktija.eu are local wall-clock times).
- Add
[waqtuna_prayer_times]to a page or post.
அடிக்கடி கேட்கப்படும் கேள்விகள்
-
Does this plugin require an API key?
-
No. The vaktija.eu API is used without an API key.
-
Can I use my own prayer times?
-
Yes. Import a CSV under WAQTUNA Data Import, then choose Imported CSV data as the source on the Location tab. CSV and API can also act as fallbacks for each other.
-
Which CSV format is supported?
-
Semicolon-separated values:
gregorian_date;hijri_date;fajr;sunrise;dhuhr;asr;maghrib;isha -
Does the plugin work without the intl PHP extension?
-
Yes. Hijri dates for 1990–2040 are calculated from an embedded lookup table, so intl is not required for normal use.
-
Can I customize prayer names and labels?
-
Yes. Use WAQTUNA Translations to override prayer names, navigation labels, Hijri months, and weekday names.
-
Can I use different custom labels on a bilingual site?
-
Yes. Choose a primary and optional secondary language on the Translations tab. Custom overrides apply only when the page is shown in one of those languages; all other languages use WordPress language packs or the plugin defaults.
-
Why is the wrong prayer highlighted?
-
Prayer times from vaktija.eu are local times for the selected city. WordPress must use the same timezone under Settings General. After you choose a location, open WAQTUNA Location — the plugin compares your WordPress timezone with the country of the selected city and shows a warning if they do not match.
-
Which timezone should I use?
-
Choose the timezone for your mosque or location (for example
Europe/Berlinfor Bonn,Europe/Sarajevofor Sarajevo). Do not leave WordPress on UTC unless your location is actually in UTC.
Reviews
இந்த செருகுநிரலுக்கு மதிப்புரைகள் எதுவும் இல்லை.
பங்களிப்பாளர்கள் & உருவாக்குனர்கள்
“WAQTUNA Prayer Times” is open source software. The following people have contributed to this plugin.
பங்களிப்பாளர்கள்Translate “WAQTUNA Prayer Times” into your language.
Interested in development?
Browse the code, check out the SVN repository, or subscribe to the development log by RSS.
Changelog
1.3.5
- Islamic key dates (Hijri calendar): Eid, Ramadan start, Laylat al-Badr, Laylat al-Qadr (27 Ramadan), Hajj, Ashura, Jumu’ah, and more — extend via vaktija_islamic_date_events filter; month timetable adds a description column on desktop and in print/PNG export
- Translations tab: customize labels for every built-in Islamic key date in primary and secondary languages
- Month timetable: up to 3 custom footer text lines below the table (centered, black or white by theme, included in print and PNG export)
- Month timetable heading shows overlapping Hijri month(s) under a Gregorian month, and overlapping Gregorian month(s) under a Hijri month (smaller text below the mosque name)
- Month timetable: removed divider line between logo and heading
- Month timetable dark theme: less transparent table cells and brighter grid lines for better readability
- Shortcode theme override: use theme=”light”, theme=”dark”, or theme=”auto” on [waqtuna_prayer_times] (all display styles)
- Month timetable: prayer column headers horizontal on desktop with ellipsis overflow; vertical on narrow/mobile layouts
- Daily widget grid: keeps 3+3 / 2-column card layout on mobile (no stacked list); switches to single-row only on wide containers (no text cropping)
- Month timetable: description column and horizontal prayer headers only on wide screens (768px+) and export; mobile keeps 15-column grid with vertical cropped prayer names
1.3.4
- Fixed PHP 7.2 activation parse error by replacing PHP 8 match expressions with switch statements
- Translations tab JavaScript is now enqueued with wp_enqueue_script instead of inline script tags
1.3.3
- Fixed Ramadan Maghrib label showing “Iftar/Iftar”; during Ramadan the column now shows only “Iftar” or a custom Iftar label
- Fixed fatal error when rendering prayer times on PHP installs without the optional mbstring extension
- Release packages no longer bundle .po/.mo files (translations are provided via translate.wordpress.org)
- Fixed prayer name overrides not saving from the Translations tab
- Rely on WordPress automatic translation loading (Text Domain header; no manual load_plugin_textdomain call)
- Custom labels are now stored per language (e.g. Bosnian overrides do not affect German pages)
- Translations tab: choose primary and optional secondary languages for custom labels; all other languages fall back to WordPress language packs or plugin defaults
1.3.2
- Fixed month timetable print and Save as image when the html-to-image vendor script was missing from the install
- Bundled html-to-image vendor file is now included in releases (no longer excluded by gitignore)
- Month export loads the image library more reliably on optimized/cached sites
- Month timetable on screen uses A4 portrait width (794px), centered, and scales down on narrow viewports
- Month timetable caption uses the mosque name (or city) from Location settings; redundant heading text option removed
- Ramadan month timetable shows Suhur, Iftar/Maghrib, and Tarawih columns (Fajr/Sabah column omitted; Suhur uses the Fajr adhan time)
- Optional mosque name on the Location tab replaces the city label on the widget when set
- Configurable frame thickness and color for the daily widget and month timetable under Display Color Settings
- Fixed current and next prayer highlight backgrounds when saving color settings (translucent rgba preserved)
- Grid layout keeps prayer boxes on one row when space allows; otherwise uses centered 3+3 (or 4+3 in Ramadan)
- Default mobile layout is now List instead of Compact Grid
1.3.1
- Month timetable fills the full WordPress or page-builder column width on screen
- Month and masjid views are excluded from the global widget max-width admin setting
- Month timetable rebuilt with CSS Grid for reliable layout in Divi and other themes
- Date, weekday, and Hijri columns no longer collapse or misalign when themes override table styles
- Improved mobile layout: smaller responsive font on narrow screens so all columns fit without horizontal scrolling
- Month timetable column headers (Greg., Week, Hijri) are translatable in all bundled languages
- Month timetable prayer times use warm ivory text in dark theme (distinct from date columns)
- Export and print still use fixed A4 portrait layout
1.3.0
- Added monthly prayer timetables via
[waqtuna_prayer_times style="gregorian-month"]andstyle="hijri-month" - Month view: optional logo (light/dark), heading text, theme, and background settings under WAQTUNA Display Month timetable
- Month view: print and Save as image (A4 portrait PNG) with full-page layout and patterned background
- Hijri month ranges use the embedded Umm al-Qura table with API/CSV fallback for daily times
- Bundled html-to-image (MIT) for client-side PNG export; no server-side image library required
1.2.3
- Frontend “powered by vaktija.eu” credit is now opt-in only (Display tab checkbox, off by default)
- Added capability check when clearing debug logs in admin
1.2.2
- Fixed masjid 90° left and 90° right rotation rendering as distinct orientations
- Masjid 90° layouts: show countdown between prayer name and prayer time
- Added explicit masjid rotation CSS classes for more reliable TV rotation styling
1.2.1
- Fixed masjid shortcode rotation so 90° values work without also setting orientation=”vertical”
1.2.0
- Added masjid full-screen display for TV and kiosk screens via [waqtuna_prayer_times style=”masjid”]
- Masjid settings in Display tab: separate theme, background, logos, header text, footer announcements, orientation, and screen rotation
- Background image opacity control (default 15%) for widget and masjid display
- Custom background images: repeat, stretch, or center (preset patterns always tile)
- Screen rotation support for portrait-mounted TVs (90°) and upside-down landscape mounts (180°)
- Updated translations for new admin and display strings
1.1.3
- Renamed plugin to WAQTUNA Prayer Times for WordPress.org compliance
- Prefixed shortcodes and AJAX actions
- Removed mandatory frontend attribution link
- Improved settings sanitization and color validation
- Expanded external services documentation in readme
1.1.2
- Added responsive layouts: choose a separate layout for mobile, tablet, and desktop
- Display settings use tabs for each screen size with layout previews
- Frontend widget switches layout automatically when the browser is resized
- Breakpoints: mobile up to 639px, tablet 640–1200px, desktop above 1200px
- Existing single layout setting is kept as the desktop fallback on upgrade
1.1.1
- Consolidated display layouts to grid, list, compact grid, and compact list (legacy layout keys map automatically)
- Improved compact layouts, countdown placement, and next-prayer widget styling
- Aligned light and dark prayer highlight colors with theme defaults
- Admin: full-width settings pages, improved Location tab layout, and a save button on each Translations group
- About tab: contact email and PayPal support link
- Fixed translation handling and WordPress Plugin Check compatibility
1.1.0
- Added Location, Custom Times, Display, and About admin tabs
- Integrated vaktija.eu API with location picker and caching
- Added WordPress timezone check on the Location tab with mismatch warnings
- Added custom congregation times and Hijri date improvements
- Added About dialog in admin
- Added 24-hour fixed time picker in admin
- Improved backwards compatibility for WordPress 5.6+ and PHP 7.2–8.5
1.0.0
- Initial public release
- Prayer times and next-prayer shortcodes
- CSV import support
- Layout and theme options
