WP Manifestindependent plugin directory
manifest / utilities / waktu-solat-wordpress-plugin

Rakanlabs Waktu Solat MY

Waktu Solat Wordpress Plugin

by Aqil · github.com/aqilmengdevelope/waktu-solat-wordpress-plugin · website

0stars
0forks

Install

No release zip yet. The repository archive installs, but the folder name will carry the branch suffix and updates will not flow:

wp plugin install https://github.com/aqilmengdevelope/waktu-solat-wordpress-plugin/archive/refs/heads/main.zip

Readme

=== Rakanlabs Waktu Solat MY === Contributors: aqilmengdevelop Tags: waktu solat, prayer times, jakim, esolat, malaysia Requires at least: 6.0 Tested up to: 7.0 Requires PHP: 7.4 Stable tag: 1.3.0 License: GPLv2 or later License URI: https://www.gnu.org/licenses/gpl-2.0.html

Malaysian prayer times (waktu solat) from the official JAKIM e-Solat API — Gutenberg block, Elementor widget, shortcode, themes and live countdown.

== Description ==

Rakanlabs Waktu Solat MY displays accurate daily prayer times for all Malaysian JAKIM zones in a beautiful, responsive card:

  • Official data — fetched directly from JAKIM's e-Solat API, cached once per day so your site never hammers the government server.
  • All 60+ zones — every state, grouped and searchable.
  • Three ways to add it — a Gutenberg block, a native Elementor widget (drag & drop, with live styling controls), or the [waktu_solat] shortcode.
  • Three built-in themes — Emerald (dark green & gold), Light (white & green), Midnight (deep navy). Site-wide defaults are set under the Waktu Solat admin menu; every block/widget/shortcode can override them.
  • Live countdown — highlights the current prayer and counts down to the next one, updating every second.
  • Two layouts — a full card for content areas and a compact card for sidebars and footers.
  • Translation-ready — all strings use the rakanlabs-waktu-solat-my text domain.

= Shortcode examples =

  • [waktu_solat] — site defaults.
  • [waktu_solat zone="WLY01" theme="light"] — Kuala Lumpur, light theme.
  • [waktu_solat zone="SGR01" layout="compact" countdown="no" imsak="no"] — compact sidebar version.

== External services ==

This plugin retrieves prayer times from the JAKIM e-Solat API (https://www.e-solat.gov.my), the official service of the Department of Islamic Development Malaysia (JAKIM).

  • What is sent: only the selected zone code (e.g. SGR01) and the requested period (today). No personal data, visitor data or site data is ever transmitted.
  • When: at most once per zone per day (responses are cached in a transient until just after midnight).
  • Provider: Jabatan Kemajuan Islam Malaysia — https://www.e-solat.gov.my

== Installation ==

  1. Upload the plugin ZIP via Plugins → Add New → Upload Plugin, or unzip it into /wp-content/plugins/.
  2. Activate it.
  3. Set your default zone, theme and layout under the Waktu Solat admin menu.
  4. Add the "Waktu Solat" block in the editor, drag the "Waktu Solat" widget in Elementor, or place the [waktu_solat] shortcode anywhere.

== Frequently Asked Questions ==

= Where does the data come from? =

From JAKIM's official e-Solat API — the same source used by government portals such as the Selangor Mufti Department website. See "External services" above.

= Does it slow my site down? =

No. Times are fetched server-side at most once per zone per day and cached with the Transients API. CSS/JS load only on pages that actually display the card.

= Which zones are supported? =

All JAKIM zones for every Malaysian state and federal territory (Johor to Labuan).

= Does it work without Elementor? =

Yes. Elementor is optional — the Gutenberg block and shortcode work with any theme. The Elementor widget simply appears automatically when Elementor is active.

= Can I change the colors? =

Pick one of the three themes, or (in Elementor) override the accent color, corner radius and width per widget. Developers can also override the --wsmy-* CSS custom properties.

== Screenshots ==

  1. Emerald theme — full card with live countdown.
  2. Light theme.
  3. Midnight theme — compact layout for sidebars.
  4. Settings page with zone, theme and layout defaults.
  5. Elementor widget with live style controls.
  6. Gutenberg block in the editor.

== Changelog ==

= 1.3.0 =

  • Renamed to Rakanlabs Waktu Solat MY (slug rakanlabs-waktu-solat-my, prefix wsmy_) for the WordPress.org directory.

= 1.2.1 =

  • Fix: JAKIM returns status "OK!" — the response validation was rejecting valid data ("Unexpected data format" error).
  • Change: settings now live in their own top-level "Waktu Solat" admin menu (was under Settings).

= 1.2.0 =

  • New: Gutenberg block (server-rendered, with zone/theme/layout controls).
  • New: full internationalization + POT file.
  • New: uninstall cleanup (options + cached transients, multisite aware).
  • New: "Settings" link on the Plugins screen.
  • Improved: stricter validation of zone/theme/layout options.

= 1.1.0 =

  • New: settings page (default zone, theme, layout).
  • New: Elementor widget with live controls.
  • New: Light and Midnight themes; compact layout.

= 1.0.0 =

  • Initial release: shortcode, Emerald card, JAKIM API with daily caching, countdown.

== Upgrade Notice ==

= 1.2.0 = Adds the Gutenberg block and translation support. No breaking changes.

Read the full README on GitHub →