I am raw admin_url('admin-ajax.php'), 'nonce' => wp_create_nonce('ashuba_calculator_nonce') )); } public function tile_calculator_shortcode($atts) { $atts = shortcode_atts(array( 'title' => 'ASHUBA Tile Calculator', 'theme' => 'default', 'show_pricing' => 'false' ), $atts); ob_start(); include plugin_dir_path(__FILE__) . 'templates/tile-calculator.php'; return ob_get_clean(); } public function cement_calculator_shortcode($atts) { $atts = shortcode_atts(array( 'title' => 'ASHUBA Cement Calculator', 'theme' => 'default' ), $atts); ob_start(); include plugin_dir_path(__FILE__) . 'templates/cement-calculator.php'; return ob_get_clean(); } public function ajax_calculate_tiles() { check_ajax_referer('ashuba_calculator_nonce', 'nonce'); $room_length = floatval($_POST['room_length']); $room_width = floatval($_POST['room_width']); $tile_size = sanitize_text_field($_POST['tile_size']); // Tile specifications $tile_specs = array( '40x40' => array('pieces' => 12, 'coverage' => 1.92), '25x40' => array('pieces' => 15, 'coverage' => 1.50), '30x30' => array('pieces' => 17, 'coverage' => 1.53), '50x50' => array('pieces' => 7, 'coverage' => 1.75), '60x60' => array('pieces' => 4, 'coverage' => 1.44) ); if (!isset($tile_specs[$tile_size])) { wp_die('Invalid tile size'); } $room_area = $room_length * $room_width; $spec = $tile_specs[$tile_size]; $boxes_needed = ceil($room_area / $spec['coverage']); $extra_boxes = ceil($boxes_needed * 0.1); $total_boxes = $boxes_needed + $extra_boxes; $total_tiles = $total_boxes * $spec['pieces']; $response = array( 'success' => true, 'data' => array( 'room_area' => $room_area, 'boxes_needed' => $boxes_needed, 'extra_boxes' => $extra_boxes, 'total_boxes' => $total_boxes, 'total_tiles' => $total_tiles, 'tile_size' => $tile_size ) ); wp_send_json($response); } public function add_admin_menu() { add_options_page( 'ASHUBA Calculators Settings', 'ASHUBA Calculators', 'manage_options', 'ashuba-calculators', array($this, 'admin_page') ); } public function admin_page() { ?>

ASHUBA Calculators Settings

Enable Pricing />
Default Currency
Contact WhatsApp

WhatsApp number for quote requests

Available Shortcodes

Tile Calculator

🏠 ASHUBA Tile Calculator

Hesabu Vigae Unavyohitaji kwa Chumba Chako

📏 Vipimo vya Chumba

💡 Jumla ya Eneo: 0.00

🎨 Chagua Ukubwa wa Vigae:

40cm × 40cm
12 vipande kwa boksi
1.92 m² kwa boksi
25cm × 40cm
15 vipande kwa boksi
1.50 m² kwa boksi
30cm × 30cm
17 vipande kwa boksi
1.53 m² kwa boksi
50cm × 50cm
7 vipande kwa boksi
1.75 m² kwa boksi
60cm × 60cm
4 vipande kwa boksi
1.44 m² kwa boksi

📊 Matokeo ya Hesabu

Maboksi Unavyohitaji
--
Jumla ya Vigae
--
Eneo la Chumba
--
Ziada (10%)
--

📈 Uwiano wa Eneo

0%
Kijani = Eneo litakalofunikwa na vigae

💰 Muhtasari wa Gharama (Kwa Muongozoni)

Maboksi ya msingi: --
Maboksi ya ziada (10%): --
Jumla ya Maboksi: --
💡 Kidokezo: Hii ni hesabu ya nadharia. Katika uhalisia, unaweza kuongeza nafasi ya 10-15% kwa ajili ya kupanga na kuhamisha.

🏠 ASHUBA Tile Calculator

Hesabu Vigae Unavyohitaji kwa Chumba Chako

📏 Vipimo vya Chumba

💡 Jumla ya Eneo: 0.00

🎨 Chagua Ukubwa wa Vigae:

40cm × 40cm
12 vipande kwa boksi
1.92 m² kwa boksi
25cm × 40cm
15 vipande kwa boksi
1.50 m² kwa boksi
30cm × 30cm
17 vipande kwa boksi
1.53 m² kwa boksi
50cm × 50cm
7 vipande kwa boksi
1.75 m² kwa boksi
60cm × 60cm
4 vipande kwa boksi
1.44 m² kwa boksi

📊 Matokeo ya Hesabu

Maboksi Unavyohitaji
--
Jumla ya Vigae
--
Eneo la Chumba
--
Ziada (10%)
--

📈 Uwiano wa Eneo

0%
Kijani = Eneo litakalofunikwa na vigae

💰 Muhtasari wa Gharama (Kwa Muongozoni)

Maboksi ya msingi: --
Maboksi ya ziada (10%): --
Jumla ya Maboksi: --
💡 Kidokezo: Hii ni hesabu ya nadharia. Katika uhalisia, unaweza kuongeza nafasi ya 10-15% kwa ajili ya kupanga na kuhamisha.

Cement Calculator

[ashuba_cement_calculator]
[ashuba_cement_calculator theme="minimal"]
'Chumba Kimoja Tiles Ngapi? - ASHUBA Calculator', 'post_content' => '

🏠 ASHUBA Tile Calculator

Hesabu Vigae Unavyohitaji kwa Chumba Chako

📏 Vipimo vya Chumba

💡 Jumla ya Eneo: 0.00

🎨 Chagua Ukubwa wa Vigae:

40cm × 40cm
12 vipande kwa boksi
1.92 m² kwa boksi
25cm × 40cm
15 vipande kwa boksi
1.50 m² kwa boksi
30cm × 30cm
17 vipande kwa boksi
1.53 m² kwa boksi
50cm × 50cm
7 vipande kwa boksi
1.75 m² kwa boksi
60cm × 60cm
4 vipande kwa boksi
1.44 m² kwa boksi

📊 Matokeo ya Hesabu

Maboksi Unavyohitaji
--
Jumla ya Vigae
--
Eneo la Chumba
--
Ziada (10%)
--

📈 Uwiano wa Eneo

0%
Kijani = Eneo litakalofunikwa na vigae

💰 Muhtasari wa Gharama (Kwa Muongozoni)

Maboksi ya msingi: --
Maboksi ya ziada (10%): --
Jumla ya Maboksi: --
💡 Kidokezo: Hii ni hesabu ya nadharia. Katika uhalisia, unaweza kuongeza nafasi ya 10-15% kwa ajili ya kupanga na kuhamisha.
', 'post_status' => 'publish', 'post_type' => 'page', 'post_name' => 'tile-calculator' ); if (!get_page_by_path('tile-calculator')) { $page_id = wp_insert_post($tile_page); // Add SEO meta if Yoast is active if (class_exists('WPSEO_Options')) { update_post_meta($page_id, '_yoast_wpseo_title', 'Chumba Kimoja Tiles Ngapi? - ASHUBA Tile Calculator'); update_post_meta($page_id, '_yoast_wpseo_metadesc', 'Chumba kimoja tiles ngapi unavyohitaji? Tumia ASHUBA Tile Calculator kupata hesabu sahihi ya vigae kwa chumba chako. Hesabu rahisi na ya haraka!'); update_post_meta($page_id, '_yoast_wpseo_focuskw', 'chumba kimoja tiles ngapi'); } } } } // Initialize the plugin new AshubaCalculators(); // Plugin activation hook register_activation_hook(__FILE__, function() { // Create necessary database tables if needed flush_rewrite_rules(); }); // Plugin deactivation hook register_deactivation_hook(__FILE__, function() { flush_rewrite_rules(); }); ?> html block.
Click edit button to change this html