Sé que esta pregunta es común, sin embargo, no pude encontrar ninguna respuesta directa. Todas las respuestas han mencionado lo que se requiere para lograr esto, pero ninguna solución final. Ninguno de los G Docs es directo al respecto. Estoy tratando de usar la API de Google My Business para obtener las reseñas y calificaciones de una empresa con un grupo de ubicaciones totalmente verificadas por Google. ( https://developers.google.com/my-business/content/review-data ) Mi único objetivo por ahora es enumerar todas las reseñas de Google y mostrarlas en el sitio web de la empresa. Realice una llamada a la API (correctamente GET) a través de Ajax/PHP, o probablemente. Respuesta API con una lista de reseñas de Google (formato JSON) Muestra los resultados en HTML.
No pude encontrar ningún ejemplo de código PHP / Javascript para comenzar a implementar esto en el sitio web de la empresa. Estaba un poco confundido acerca de cómo usar la biblioteca del cliente PHP de Google para eso. Demasiadas formas, pero ninguna funcionó en mis pruebas ( https://github.com/googleapis/google-api-php-client )
Si es así, ¿este enfoque siempre solicitará al usuario que seleccione en qué cuenta iniciar sesión? que no es el comportamiento que estoy buscando. Solo quiero obtener todas las reseñas y mostrarlas en el sitio web, que no debería requerir ningún inicio de sesión para el usuario.
Sería útil si pudiera compartir el código y el procedimiento.
Gracias de antemano por cualquier ayuda. Saludos
Google te permite sacar 5, ha sido así durante mucho, mucho tiempo.
Escribí una API que interactúa con Google para hacer lo que necesita, todo lo que necesita es la identificación del lugar y puede obtener las reseñas históricas, una vez que obtenga las reseñas históricas, puede usar la API nativa en tiempo real, no martillar el API de lo contrario te tapará :)
Espero que ayude, vea la URL de demostración a continuación (solo cambie la identificación del lugar con las que necesita y guarde lo que consume en reviews.json y tendrá calificaciones históricas).
https://api.reviewsmaker.com/gmb/?placeid=ChIJCezbnsal2YgRySx0GXk5hEo
Por lo general, el uso de una API implica,
Aquí hay una implementación de ejemplo de PHP de uno de mis proyectos anteriores. https://gist.github.com/shramee/fc115a909fd1f8726a589d1b0b351e3e
Usamos cURL para obtener las reseñas.
/** * Get google reviews * @return array Google reviews data */ function get_google_reviews(){ // URL to fetch $google_api = 'https://maps.googleapis.com/maps/api/place/details/json?placeid=<your_place_id>&sensor=true&key=<key>'; // Fetch reviews with cURL $ch = curl_init(); curl_setopt($ch, CURLOPT_HEADER, 0); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_URL, $google_api); $response = curl_exec($ch); curl_close($ch); // JSON decode the text to associative array return json_decode($response, 'assoc'); }Luego repasamos las reseñas y generamos algo de HTML,
// See if we got some reviews if ($g_response && $g_response['result'] && $g_response['result']['reviews']) { // Loop through the reviews foreach ($g_response['result']['reviews'] as $review) { // Output HTML for reviews ?> <dl> <dt> date </dt> <dd><?php echo $review['time'] ?></dd> <dt> rating </dt> <dd><?php echo $review['rating'] ?></dd> <dt> name </dt> <dd><?php echo $review['author_name'] ?></dd> <dt> content </dt> <dd><?php echo $review['text'] ?></dd> </dl> <?php } }Para JavaScript, usaría algo como fetch / axios para obtener los datos y luego recorrer los elementos para crear algunos elementos React o hacer alguna manipulación DOM.