Plugin Directory

Changeset 3302806


Ignore:
Timestamp:
05/29/2025 09:36:47 AM (10 months ago)
Author:
vaksin
Message:

0.2.2

  • Fix URL dynamic data for Breakdance
  • Delete WPML package when Option deleted
Location:
radas
Files:
164 added
5 edited

Legend:

Unmodified
Added
Removed
  • radas/trunk/admin/option-page.php

    r3298406 r3302806  
    6262                    capability: $this->page['capability'],
    6363                    menu_slug: $this->page['slug'],
    64                     callback: fn()=> $this->render(),
     64                    // callback: fn()=> $this->render(),
    6565                    icon_url: $this->page['icon'],
    6666                    position: $this->page['position'] ? $this->page['position'] : null
    6767                );   
     68
     69                add_submenu_page(
     70                    parent_slug: $this->page['slug'],
     71                    page_title: $this->page['title'],
     72                    menu_title: $this->page['title'],
     73                    capability: $this->page['capability'],
     74                    menu_slug: $this->page['slug'],
     75                    callback: fn() => $this->render(),
     76                );
     77
    6878            }, 10);       
    6979        } else {
     
    342352        }
    343353
    344         if(in_array($field->type, ['email', 'tel', 'media']) ){
     354        if(in_array($field->type, ['email', 'tel', 'media', 'url']) ){
    345355            $field_data['slug'] = $this->page['slug'] . '-' . $field->id . '-url';
    346356            \Breakdance\DynamicData\registerField(new Opt_URL_Field($field_data));           
    347         }       
     357        }
    348358    }
    349359
     
    511521        return $value ;
    512522    }
     523
     524    public function delete(){
     525        $deleted = false;
     526       
     527        if( $this->page && get_option($this->page['slug']) && !delete_option($this->page['slug'])){
     528            $deleted = true;
     529        }
     530       
     531        if ($deleted && $this->is_wpml_active){
     532            $package = $this->get_wpml_package_kind();
     533            do_action( 'wpml_delete_package', $package['name'], $package['kind'] );
     534        }
     535
     536        return $deleted;
     537    }
    513538}
  • radas/trunk/admin/rest/cpt/rest-option-page.php

    r3156010 r3302806  
    9191        }     
    9292       
    93         $page = json_decode(get_post_meta($id, 'op_json', true), true);
    94         if(get_option($page['slug']) && !delete_option($page['slug'])){
     93        /** @var Option_Page $opt_page */
     94        $opt_page = Util::get_instance_with_param(Option_Page::class, $id, $id);
     95        if(!$opt_page->delete()){
    9596            return Util::rest_response(
    9697                code: 'failed',
     
    101102                status: 500
    102103            );   
    103         }
     104        }
     105       
     106        Util::delete_instance_with_param(Option_Page::class, $id, $id);
     107
     108        // $page = json_decode(get_post_meta($id, 'op_json', true), true);
     109        // if(get_option($page['slug']) && !delete_option($page['slug'])){
     110        //     return Util::rest_response(
     111        //         code: 'failed',
     112        //         message: __('Something wrong, option cannot be deleted', 'radas'),
     113        //         data: [
     114        //             'id' => $id
     115        //         ] ,
     116        //         status: 500
     117        //     );   
     118        // }
    104119
    105120        if(wp_delete_post($id, true)) {
  • radas/trunk/lib/helper/util.php

    r3297657 r3302806  
    9999
    100100    /**
     101     * To get Instance from wp_cache
     102     * @param string $class
     103     * @return bool
     104     */
     105    public static function delete_cached_instance($class){
     106        return wp_cache_delete ($class, 'radas_instance');
     107    }
     108   
     109
     110    /**
    101111     * To get cached instance with params from wp_cache
    102112     * @param string  $class
     
    117127    }   
    118128
     129        /**
     130     * To get cached instance with params from wp_cache
     131     * @param string  $class
     132     * @param string  $key
     133     * @param mixed $param
     134     * @return bool
     135     */
     136    public static function delete_instance_with_param($class, $key, ...$param){
     137        return wp_cache_delete("{$class}_{$key}", 'radas_instance');
     138    } 
     139
    119140    public static function get_function_return_type($function){
    120141        return (new \ReflectionFunction($function))->getReturnType();
  • radas/trunk/radas.php

    r3298406 r3302806  
    44 * Plugin URI:        https://wpradas.com
    55 * Description:       The Lightweight WordPress Plugin for Effortless Options Page Creation
    6  * Version:           0.2.1
     6 * Version:           0.2.2
    77 * Requires at least: 6.5
    88 * Requires PHP:      8.0
    9  * Author:            ExpressWEB
    10  * Author URI:        https://www.eweb.co.id/
     9 * Author:            wpid
     10 * Author URI:        https://www.wpid.dev/
    1111 * License:           GPL v2 or later
    1212 * License URI:       https://www.gnu.org/licenses/gpl-2.0.html
  • radas/trunk/readme.txt

    r3298406 r3302806  
    55Requires at least: 6.5
    66Tested up to: 6.8.1
    7 Stable tag: 0.2.1
     7Stable tag: 0.2.2
    88License: GPLv2 or later
    99License URI: http://www.gnu.org/licenses/gpl-2.0.html
     
    6565
    6666== Changelog ==
     67= 0.2.2 =
     68
     69* Fix URL dynamic data for Breakdance
     70* Delete WPML package when Option deleted
     71
    6772= 0.2.1 =
    6873
Note: See TracChangeset for help on using the changeset viewer.