challenge
1 year ago
css
1 day ago
img
1 year ago
js
1 month ago
menu
1 month ago
partials
1 week ago
rest-api
1 day ago
scss
1 year ago
settings
1 day ago
uninstall
1 year ago
wpchill
1 month ago
admin-notices.php
5 months ago
admin.php
1 month ago
class-strong-testimonials-addons.php
1 month ago
class-strong-testimonials-admin-category-list.php
1 year ago
class-strong-testimonials-admin-list.php
1 year ago
class-strong-testimonials-admin-scripts.php
1 month ago
class-strong-testimonials-admin.php
1 month ago
class-strong-testimonials-debug.php
5 months ago
class-strong-testimonials-exporter.php
1 year ago
class-strong-testimonials-help.php
1 year ago
class-strong-testimonials-helper.php
1 month ago
class-strong-testimonials-list-table.php
1 year ago
class-strong-testimonials-lite-vs-pro-page.php
1 month ago
class-strong-testimonials-post-editor.php
6 months ago
class-strong-testimonials-review.php
1 year ago
class-strong-testimonials-updater.php
1 month ago
class-strong-testimonials-upsell.php
1 day ago
class-strong-views-list-table.php
1 month ago
class-walker-strong-category-checklist.php
1 year ago
class-walker-strong-form-category-checklist.php
1 year ago
class-wpmtst-onboarding.php
1 year ago
compat.php
1 year ago
custom-fields-ajax.php
1 year ago
custom-fields.php
1 day ago
form-preview.php
1 year ago
view-list-order.php
1 year ago
views-ajax.php
1 month ago
views-validate.php
1 year ago
views.php
1 month ago
view-list-order.php
66 lines
| 1 | <?php |
| 2 | /** |
| 3 | * Function for managing the last sort order on the view list table per user. |
| 4 | */ |
| 5 | |
| 6 | /** |
| 7 | * Save |
| 8 | */ |
| 9 | function wpmtst_save_view_list_order() { |
| 10 | |
| 11 | if ( ! wp_verify_nonce( $_POST['nonce'], 'wpmtst-admin-script-nonce' ) ) { //phpcs:ignore |
| 12 | wp_send_json_error( array( 'message' => __( 'Nonce does not exist.', 'strong-testimonials' ) ) ); |
| 13 | die(); |
| 14 | } |
| 15 | |
| 16 | if ( ! current_user_can( 'manage_options' ) ) { |
| 17 | wp_send_json_error( array( 'message' => __( 'Insufficient capabilities.', 'strong-testimonials' ) ) ); |
| 18 | die(); |
| 19 | } |
| 20 | |
| 21 | $name = isset( $_POST['name'] ) ? sanitize_text_field( wp_unslash( $_POST['name'] ) ) : ''; |
| 22 | $order = isset( $_POST['order'] ) ? sanitize_text_field( wp_unslash( $_POST['order'] ) ) : ''; |
| 23 | $success = ''; |
| 24 | if ( in_array( $name, array( 'name', 'id' ), true ) ) { |
| 25 | $success = update_user_meta( get_current_user_id(), 'strong_view_list_order', array( $name, $order ) ); |
| 26 | } |
| 27 | echo esc_html( $success ); |
| 28 | wp_die(); |
| 29 | } |
| 30 | add_action( 'wp_ajax_wpmtst_save_view_list_order', 'wpmtst_save_view_list_order' ); |
| 31 | |
| 32 | |
| 33 | /** |
| 34 | * Fetch |
| 35 | */ |
| 36 | function wpmtst_fetch_view_list_order() { |
| 37 | global $pagenow; |
| 38 | |
| 39 | if ( 'edit.php' === $pagenow |
| 40 | && isset( $_GET['post_type'] ) |
| 41 | && 'wpm-testimonial' === $_GET['post_type'] |
| 42 | && isset( $_GET['page'] ) |
| 43 | && 'testimonial-views' === $_GET['page'] |
| 44 | && ! isset( $_GET['orderby'] ) |
| 45 | && ! isset( $_GET['action'] ) ) { |
| 46 | $order = get_user_meta( get_current_user_id(), 'strong_view_list_order', true ); |
| 47 | if ( $order ) { |
| 48 | $url = admin_url( "edit.php?post_type=wpm-testimonial&page=testimonial-views&orderby={$order[0]}&order={$order[1]}" ); |
| 49 | wp_redirect( $url ); |
| 50 | exit; |
| 51 | } |
| 52 | } |
| 53 | } |
| 54 | add_action( 'admin_init', 'wpmtst_fetch_view_list_order' ); |
| 55 | |
| 56 | |
| 57 | /** |
| 58 | * Clear |
| 59 | */ |
| 60 | function wpmtst_clear_view_list_order() { |
| 61 | delete_user_meta( get_current_user_id(), 'strong_view_list_order' ); |
| 62 | $url = 'edit.php?post_type=wpm-testimonial&page=testimonial-views'; |
| 63 | wp_redirect( $url ); |
| 64 | } |
| 65 | add_action( 'admin_post_clear-view-sort', 'wpmtst_clear_view_list_order' ); |
| 66 |