Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save FrancoStino/2c3739ee5f21ea1c30a524ebd11dbc0a to your computer and use it in GitHub Desktop.
Save FrancoStino/2c3739ee5f21ea1c30a524ebd11dbc0a to your computer and use it in GitHub Desktop.
Visit count into product page and into custom column inside admin product page called "Views" (visite) - Woocommerce
<?
/*
* Visit count into product page and into custom column inside admin product page called "Views" (visite) - Woocommerce
*/
add_action('wp', function() {
global $post;
$user_ip = $_SERVER['REMOTE_ADDR'];
$meta = get_post_meta( $post->ID, 'views_count', TRUE );
$meta = '' !== $meta ? explode( ',', $meta ) : array();
$meta = array_filter( array_unique( $meta ) );
if( ! in_array( $user_ip, $meta ) ) {
array_push( $meta, $user_ip );
update_post_meta( $post->ID, 'views_count', implode(',', $meta) );
}
});
/**
* @snippet New Products Table Column @ WooCommerce Admin
* @how-to Get CustomizeWoo.com FREE
* @author Rodolfo Melogli
* @compatible WooCommerce 3.7
* @donate $9 https://businessbloomer.com/bloomer-armada/
*/
add_filter( 'manage_edit-product_columns', 'bbloomer_admin_products_visibility_column', 9999 );
function bbloomer_admin_products_visibility_column( $columns ){
$columns['visite'] = 'Visite';
return array_slice( $columns, 0, 3, true ) + array( 'visite' => 'Visite' ) + array_slice( $columns, 3, count( $columns ) - 3, true );
}
add_action( 'manage_product_posts_custom_column', 'bbloomer_admin_products_visibility_column_content', 10, 2 );
function bbloomer_admin_products_visibility_column_content( $column, $product_id ){
if ( $column == 'visite' ) {
$meta = get_post_meta( $product_id, 'views_count', TRUE );
$result = count(explode(',',$meta));
echo $result;
}
}
add_filter( 'manage_edit-product_sortable_columns', 'bbloomer_admin_products_visibility_column_sortable' );
function bbloomer_admin_products_visibility_column_sortable( $columns ){
$columns['visite'] = 'visite';
return $columns;
}
/* --- */
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment