Advertisement
palsushobhan

wcfm-article-for-admin-review

Aug 22nd, 2022
1,107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
PHP 2.45 KB | None | 0 0
  1. add_action('after_wcfm_articles_manage_meta_save', function($article_id) {
  2.     global $WCFM;
  3.     $article = get_post($article_id);
  4.     $vendor_id = $article->post_author;
  5.     $vendor_id = apply_filters('wcfm_current_vendor_id', $vendor_id);
  6.     if(!$vendor_id) return;
  7.  
  8.     $article_status = get_post_status( $article_id );
  9.     if( $article_status == 'pending' ) {
  10.         $wcfm_review_article_notified = get_post_meta( $article_id, '_wcfm_review_article_notified', true );
  11.         if( !$wcfm_review_article_notified ) {
  12.             $author_id = $vendor_id;
  13.             $author_is_admin = 0;
  14.             $author_is_vendor = 1;
  15.             $message_to = 0;
  16.             $wcfm_messages = sprintf( __( 'An Article <b>%s</b> is awaiting for review', 'wc-frontend-manager' ), '<a class="wcfm_dashboard_item_title" href="' . get_wcfm_articles_manage_url( $article_id ) . '">' . get_the_title( $article_id ) . '</a>' );
  17.             $WCFM->wcfm_notification->wcfm_send_direct_message( $author_id, $message_to, $author_is_admin, $author_is_vendor, $wcfm_messages, 'article_review', apply_filters( 'wcfm_is_allow_review_article_notification_email', true ) );
  18.             update_post_meta( $article_id, '_wcfm_review_article_notified', 'yes' );
  19.             do_action( 'wcfm_after_review_article_by_vendor', $article_id, $vendor_id );
  20.         }
  21.     } else {
  22.         if( $article_status != 'publish' ) return;
  23.         $wcfm_new_article_notified = get_post_meta( $article_id, '_wcfm_new_article_notified', true );
  24.         if( !$wcfm_new_article_notified ) {
  25.             $author_id = $vendor_id;
  26.             $author_is_admin = 0;
  27.             $author_is_vendor = 1;
  28.             $message_to = 0;
  29.             $wcfm_messages = sprintf( __( 'A new article <b>%s</b> is added by <b>%s</b>', 'wc-frontend-manager' ), '<a class="wcfm_dashboard_item_title" href="' . get_permalink( $article_id ) . '">' . get_the_title( $article_id ) . '</a>', wcfm_get_vendor_store( $vendor_id ) );
  30.             $WCFM->wcfm_notification->wcfm_send_direct_message( $author_id, $message_to, $author_is_admin, $author_is_vendor, $wcfm_messages, 'new_article', apply_filters( 'wcfm_is_allow_new_article_notification_email', false ) );
  31.             update_post_meta( $article_id, '_wcfm_new_article_notified', 'yes' );
  32.             do_action( 'wcfm_after_new_article_by_vendor', $article_id, $vendor_id );
  33.         }
  34.     }
  35. });
  36.  
  37. add_filter('wcfm_message_types', function($message_types) {
  38.     $article_types = array(
  39.         'article_review' => 'Article Review',
  40.         'new_article' => 'New Article',
  41.     );
  42.     return $message_types + $article_types;
  43. }, 200);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement