如何在更新页面后保持星级评分

时间:2017-05-12 06:49:26

标签: php jquery wordpress

我在wordpress(后端)中使用jQuery创建了一个5星评级系统插件。星值也会更新到后期元表。如果我发布了一个帖子3星并更新了页面,则该值将存储在post meta中,但在更新页面后,评级将不会显示。所以我的问题是如何在更新页面之后保留这些值,直到我们手动编辑星级。

<?php

/* Plugin Name: Star Rating
 * Version: 1.0
 */

class starrating{

    public function __construct(){
    add_action('add_meta_boxes',array($this,'my_meta'));
    add_action('admin_enqueue_scripts',array($this ,'starscript' ));
    add_action('save_post', array($this,'save_field'));
    }


    public function my_meta()

    {

        add_meta_box(
       'my_custom_meta',
       'Created By',
        array($this,'my_meta_box_mes'),
       'a_z',
       'side',
       'low'
    );

    }

    public function save_field($post_id)

    {
    update_post_meta($post_id,'starrating',$_POST['rating']);    
 }


    public function my_meta_box_mes()
    {

    ?>
     <label>Please Rate Your Ratings !!</label>
     <p>
  <input type="hidden" name="rating" id="rating" />
<ul class="rating" onMouseOut="resetRating();">
  <li name="star" value="one" onmouseover="highlightStar(this);" onmouseout="removeHighlight();" onclick="addRating(this);">&#x2605;</li>
  <li name="star" value="two" onmouseover="highlightStar(this);" onmouseout="removeHighlight();" onclick="addRating(this);">&#x2605;</li>
  <li name="star" value="three" onmouseover="highlightStar(this);" onmouseout="removeHighlight();" onclick="addRating(this);">&#x2605;</li>
  <li name="star" value="four" onmouseover="highlightStar(this);" onmouseout="removeHighlight();" onclick="addRating(this);">&#x2605;</li>
  <li name="star" value="five" onmouseover="highlightStar(this);" onmouseout="removeHighlight();" onclick="addRating(this);">&#x2605;</li>
</ul>
    </p>



     <?php
    }
    public function starscript(){
     wp_enqueue_script( 'star_id',content_url() . '/plugins/star_rating/js/starrating.js' );
     wp_enqueue_script('jquery_id', 'https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js');
     wp_enqueue_style( 'styl_id',content_url() . '/plugins/star_rating/css/star.css' ); 

    }
}
$star=new starrating();

?>

0 个答案:

没有答案