J'ai utilisé une carte google, mais nous avons besoin d'un niveau de zoom différent pour les appareils de largeur diffractée pour cela, j'ai utilisé le code ci-dessous, mais je ne sais pas pourquoi mon code ne s'exécute pas.

        $window_width = "<script type='text/javascript'>document.write(window.innerWidth);</script>";
            $window_width = strval($window_width); 
              if($window_width == 1920){
                ?>
                <div class="map c27-map mylisting-map-loading" id="<?php echo esc_attr('map__' . 
            uniqid()) ?>" data-options="<?php echo c27()->encode_attr([
                    'skin' => $data['map']['skin'],
                    'scrollwheel' => $data['map']['scrollwheel'],
                    'zoom' => 10,
                    'minZoom' =>5,
                    'maxZoom' => 5,
                    'draggable' => false,]) ?>">
                </div><?php
              }else{
                ?>
                <div class="map c27-map mylisting-map-loading" id="<?php echo esc_attr('map__' . 
      uniqid()) ?>" data-options="<?php echo c27()->encode_attr([
                    'skin' => $data['map']['skin'],
                    'scrollwheel' => $data['map']['scrollwheel'],
                    'zoom' => 10,
                    'minZoom' => 10,
                    'maxZoom' => 10,
                    'draggable' => false,]) ?>">
                </div>

                <?php
              }
-1
parth mangukiya 11 févr. 2021 à 14:46

1 réponse

Meilleure réponse

Vous pouvez réaliser la même chose avec javascript seul, mais comme vous mélangez php dans des options de données, pour le scénario actuel, ce qui suit pourrait être un moyen facile à réaliser. (Veuillez noter que je n'ai pas encore testé la syntaxe. Mais cela devrait fonctionner.)

$output_script = "
  var innerWidth = window.innerWidth;
  var html = '';
  if (innerWidth == 1920) {
    html = `
    <div class="map c27-map mylisting-map-loading" id="<?php echo esc_attr('map__' . 
      uniqid()) ?>" data-options="<?php echo c27()->encode_attr([
              'skin' => $data['map']['skin'],
              'scrollwheel' => $data['map']['scrollwheel'],
              'zoom' => 10,
              'minZoom' =>5,
              'maxZoom' => 5,
              'draggable' => false,]) ?>">
          </div>`
  } else {
    html = `
    <div class="map c27-map mylisting-map-loading" id="<?php echo esc_attr('map__' . 
      uniqid()) ?>" data-options="<?php echo c27()->encode_attr([
              'skin' => $data['map']['skin'],
              'scrollwheel' => $data['map']['scrollwheel'],
              'zoom' => 10,
              'minZoom' =>5,
              'maxZoom' => 5,
              'draggable' => false,]) ?>">
          </div>`

  }
  document.onload(() => document.getElementById('target').innerHTML = html)
";
0
DivineCoder 11 févr. 2021 à 12:11