Нужна пагинация кастомного сниппета

Ребята, нужна пагинация сниппета, чтобы с pdoPage работало. Помогите.
<?php
// VK API
    $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
    $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
    $rev = $modx->getOption('rev', $scriptProperties, '1'); // 1 новые сверху
    $extended = $modx->getOption('extended', $scriptProperties, '0'); // Расширенные поля
    $feed_type = $modx->getOption('feed_type', $scriptProperties, 'photo'); // photo, photo_tag
    $count = $modx->getOption('count', $scriptProperties, ''); // Количество загружаемых фото
    $class = $modx->getOption('class', $scriptProperties, '');
    $tpl = $modx->getOption('tpl', $scriptProperties, '@INLINE <li><img src="[[+src_bigxx]]"></li>');
    
    $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
    $result = json_decode($query, true); // Декодируем полученный json массив
    
    $response = $result['response'];
    $output = '';
    $pdo = $modx->getService('pdoTools');
    
    foreach ($response as $res) {    
        $res['class'] = $class;
        $output .= $pdo->getChunk($tpl, $res);
    }
    return $output;
Дмитрий
30 января 2018, 17:36
modx.pro
1 412
0

Комментарии: 31

Алексей Ерохин
31 января 2018, 10:50
1
0
Перед foreach
$modx->setPlaceholder($totalVar,count($response));
$response = array_slice($response,$offset, ($limit+$offset), true);
Если нужен idx в чанках:
foreach ($response as $key=>$res) {    
        $res['class'] = $class;
	$res['idx'] = $key+1;
        $output .= $pdo->getChunk($tpl, $res);
    }
    Дмитрий
    31 января 2018, 12:04
    0
    Спасибо за участие решения проблемы.
    [[!pdoPage?
    &element=`GetVkAlbumPhoto`
                            		&owner_id=`[[*album_group_id]]`
                                    &album_id=`[[*album_id]]`
                                    &rev=`1`
                            		&tpl=`VkPicTpl`
                            		&limit=`5`
                            		&pageLimit=`10`
                            		&pageNavVar=`album_photo_page.nav`
                            		&tplPage=`@INLINE <li class="waves-effect"><a href="[[+href]]">[[+pageNo]]</a></li>`
                                    &tplPageWrapper=`@INLINE <div class="pagination"><ul class="pagination">[[+first]][[+prev]][[+pages]][[+next]][[+last]]</ul></div>`
                                    &tplPageActive=`@INLINE <li class="active"><a href="[[+href]]">[[+pageNo]]</a></li>`
                                    &tplPagePrev=`@INLINE <li class="waves-effect control"><a href="[[+href]]"><i class="material-icons">chevron_left</i></a></li>`
                                    &tplPageNext=`@INLINE <li class="waves-effect control"><a href="[[+href]]"><i class="material-icons">chevron_right</i></a></li>`
                                    &tplPageFirstEmpty=`@INLINE <li class="waves-effect control"><a href="[[+href]]">Первая</a></li>`
                                    &tplPageLastEmpty=`@INLINE <li class="waves-effect control"><a href="[[+href]]">Последняя</a></li>`
                                    &tplPagePrevEmpty=`@INLINE <div style="display: inline; padding-left: 15px"></div>`
                                    &tplPageNextEmpty=`@INLINE <div style="display: inline; padding-left: 15px"></div>`
                            	]]
    Вызвал. Страниц очень много. На деле 66 фото.
    Страницы некоторые отображают те же фотки.
    Можете посмотреть сами.
      Алексей Ерохин
      31 января 2018, 12:19
      0
      Версия pdoTools? Может были какие-то изменения в этих переменных (limit, page, offset)

      И код сниппета полный еще раз (с изменениями)
        Алексей Ерохин
        31 января 2018, 12:21
        0
        А еще что возвращает vk скиньте (json)
          Алексей Ерохин
          31 января 2018, 12:29
          0
          Ошибочку в коде у себя нашел,
          $response = array_slice($response,$offset, $limit, true);
          А то что фото повторяются — это скорее всего заслуга vk, что он возвращает каждый раз немного другой порядок. Скорее всего стоит 1 раз получить и записать в кеш, при загрузке страницы проверять кеш — если нет, получать снова, иначе брать из кеша.
            Дмитрий
            31 января 2018, 12:38
            0
            ОООО!!! Теперь огонь!
            Большое спасибо за решение проблемы! Я просто сам практически ничего не понимаю в этом. Стихия другая, но делать нужно. Я вот код автора переделал, т.к. почти не работал. А за пагинацию спасибо.
              Алексей Ерохин
              31 января 2018, 12:39
              0
              Хотя теперь не должны повторяться, это было из-за ошибки в коде.

              Но лучше все-таки писать в кеш, чтобы не запрашивать каждый раз все фото. Кеш сбрасывать плагином на очистку кеша сайта, или передавая определенный параметр на страницу (refresh=1), ну или кеш, например, на сутки делать.

              $photos= $modx->cacheManager->get('vk_photos', [xPDO::OPT_CACHE_KEY => 'vk_photos']);
              if(empty($photos)) { 
              /*получаем фото с ВК*/
              $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
                  $result = json_decode($query, true); // Декодируем полученный json массив
                  
                  $response = $result['response'];
              $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']
              }
                Дмитрий
                31 января 2018, 12:50
                0
                Упал код. Страница не загрузилась.
                <?php
                // VK API
                    $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
                    $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
                    $rev = $modx->getOption('rev', $scriptProperties, '1'); // 1 - новые сверху
                    $extended = $modx->getOption('extended', $scriptProperties, '0'); // Расширенные поля
                    $feed_type = $modx->getOption('feed_type', $scriptProperties, 'photo'); // photo, photo_tag
                    $count = $modx->getOption('count', $scriptProperties, ''); // Количество загружаемых фото
                    $class = $modx->getOption('class', $scriptProperties, '');
                    $tpl = $modx->getOption('tpl', $scriptProperties, '@INLINE <li><img src="[[+src_bigxx]]"></li>');
                    
                    $photos= $modx->cacheManager->get('vk_photos', [xPDO::OPT_CACHE_KEY => 'vk_photos']);
                    if(empty($photos)) { 
                        /*получаем фото с ВК*/
                        $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
                        $result = json_decode($query, true); // Декодируем полученный json массив
                        
                        $response = $result['response'];
                        $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']
                    }
                    
                    $output = '';
                    $pdo = $modx->getService('pdoTools');
                    
                    $modx->setPlaceholder($totalVar, count($response));
                    $response = array_slice($response, $offset, $limit, true);
                    
                    foreach ($response as $res) {    
                        $res['class'] = $class;
                        $output .= $pdo->getChunk($tpl, $res);
                    }
                    return $output;
                  Алексей Ерохин
                  31 января 2018, 12:56
                  0
                  Некоторые правки
                  <?php
                  // VK API
                      $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
                      $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
                      $rev = $modx->getOption('rev', $scriptProperties, '1'); // 1 - новые сверху
                      $extended = $modx->getOption('extended', $scriptProperties, '0'); // Расширенные поля
                      $feed_type = $modx->getOption('feed_type', $scriptProperties, 'photo'); // photo, photo_tag
                      $count = $modx->getOption('count', $scriptProperties, ''); // Количество загружаемых фото
                      $class = $modx->getOption('class', $scriptProperties, '');
                      $tpl = $modx->getOption('tpl', $scriptProperties, '@INLINE <li><img src="[[+src_bigxx]]"></li>');
                      
                      $response= $modx->cacheManager->get('vk_photos', [xPDO::OPT_CACHE_KEY => 'vk_photos']);
                      if(empty($response)) { 
                          /*получаем фото с ВК*/
                          $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
                          $result = json_decode($query, true); // Декодируем полученный json массив
                          
                          $response = $result['response'];
                          $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']
                      }
                      
                      $output = '';
                      $pdo = $modx->getService('pdoTools');
                      
                      $modx->setPlaceholder($totalVar, count($response));
                      $response = array_slice($response, $offset, $limit, true);
                      
                      foreach ($response as $res) {    
                          $res['class'] = $class;
                          $output .= $pdo->getChunk($tpl, $res);
                      }
                      return $output;
                  Файл с кешем лежит тут core/cache/vk_photos/
                    Дмитрий
                    31 января 2018, 15:50
                    0
                    HTTP ERROR 500
                      Алексей Ерохин
                      31 января 2018, 15:54
                      0
                      $response = $result['response'];
                              $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']);
                      Видимо криво скопировал, не хватало закрывающей скобки и точки с запятой.
                        Дмитрий
                        31 января 2018, 16:10
                        0
                        Спасибо. Только можно ответ? Если я щас сброшу кеш через админку, то он почиститься? И перекешируется через день?
                        Алексей Ерохин
                        31 января 2018, 16:12
                        0
                        Через админку он не почистится. Через сутки при запросе он сгенерируется снова.
                        Дмитрий
                        31 января 2018, 16:20
                        0
                        А если есть необходимость, а через админку нельзя?
                        То нужно лезть в core/cache/vk_photos/ и чистить?
                        Алексей Ерохин
                        31 января 2018, 16:27
                        0
                        Можно так, можно в скрипт добавить проверку — передавать в адресной строке параметр, если он передан принудительно обновлять кеш.

                        if(empty($response) || $request['refresh']==1) { 
                                /*получаем фото с ВК*/
                                $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
                                $result = json_decode($query, true); // Декодируем полученный json массив
                                
                                $response = $result['response'];
                                $photos= $modx->cacheManager->set('vk_photos',$response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']
                            }
                        Надо будет вызвать страницу с get-параметром refresh=1
                        Дмитрий
                        01 февраля 2018, 10:43
                        0
                        Слушайте, а я ведь щас понял, что кеш таким образом не верный для меня. У меня ресурс несколько документов с разными альбомами. А получилось, что везде один. Закешировал один.
                        Алексей Ерохин
                        01 февраля 2018, 11:43
                        0
                        $response= $modx->cacheManager->get('vk_photos_'.$modx->resource->id, [xPDO::OPT_CACHE_KEY => 'vk_photos']);
                        $photos= $modx->cacheManager->set('vk_photos_'.$modx->resource->id, $response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']);
                        Замените эти строчки
                        Дмитрий
                        01 февраля 2018, 12:20
                        0
                        Отлично. Спасибо.
                        Дмитрий
                        13 февраля 2018, 15:56
                        0
                        Я ещё делал сниппет для получения обложки альбома.
                        $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
                            $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
                            $class = $modx->getOption('class', $scriptProperties, '');
                        
                            $query = file_get_contents('https://api.vk.com/method/photos.getAlbums?owner_id=-'.$owner_id.'&album_ids='.$album_id.'&need_covers=1&photo_sizes=1');
                            $result = json_decode($query, true);
                            
                            $response = $result['response'];
                            $pdo = $modx->getService('pdoTools');
                            
                            foreach($response[0]['sizes'] as $pic){
                                if($pic['width'] == 604)
                                    $preview = $pic['src'];
                            }
                            return $preview;
                        Проверьте, правильно ли я делаю кеширование, спасибо:
                        $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
                            $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
                            $class = $modx->getOption('class', $scriptProperties, '');
                        
                            $response = $modx->cacheManager->get('vk_album_prev_'.$modx->resource->id, [xPDO::OPT_CACHE_KEY => 'vk_album_prev']);
                            if(empty($response)) {
                                /* Получаем превью альбома с ВК */
                                $query = file_get_contents('https://api.vk.com/method/photos.getAlbums?owner_id=-'.$owner_id.'&album_ids='.$album_id.'&need_covers=1&photo_sizes=1');
                                $result = json_decode($query, true); // Декодируем полученный json массив
                            
                                $response = $result['response'];
                                $alb_preview= $modx->cacheManager->set('vk_photos_'.$modx->resource->id, $response, 3600, [xPDO::OPT_CACHE_KEY => 'vk_album_prev']);
                            }
                            
                            $pdo = $modx->getService('pdoTools');
                            
                            $modx->setPlaceholder($totalVar, count($response));
                            $response = array_slice($response, $offset, $limit, true);
                            
                            foreach($response[0]['sizes'] as $pic){
                                if($pic['width'] == 604)
                                    $preview = $pic['src'];
                            }
                            return $preview;
                        Алексей Ерохин
                        13 февраля 2018, 16:01
                        +1
                        Тут ошибка
                        $alb_preview= $modx->cacheManager->set('vk_photos_'.$modx->resource->id, $response, 3600, [xPDO::OPT_CACHE_KEY => 'vk_album_prev']);
                        Вы пишите кеш и получаете его из разных файлов
                        $response = $modx->cacheManager->get('vk_album_prev_'.$modx->resource->id, [xPDO::OPT_CACHE_KEY => 'vk_album_prev']);
                        Нужно привести к одному виду.
                        Дмитрий
                        13 февраля 2018, 16:40
                        0
                        Да не заметил…
                        <?php
                        //VK API
                            $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
                            $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
                            $class = $modx->getOption('class', $scriptProperties, '');
                        
                            $response = $modx->cacheManager->get('vk_album_prev_'.$modx->resource->id, [xPDO::OPT_CACHE_KEY => 'vk_album_prev']);
                            if(empty($response)) {
                                /* Получаем превью альбома с ВК */
                                $query = file_get_contents('https://api.vk.com/method/photos.getAlbums?owner_id=-'.$owner_id.'&album_ids='.$album_id.'&need_covers=1&photo_sizes=1');
                                $result = json_decode($query, true); // Декодируем полученный json массив
                            
                                $response = $result['response'];
                                $alb_preview= $modx->cacheManager->set('vk_album_prev_'.$modx->resource->id, $response, 3600, [xPDO::OPT_CACHE_KEY => 'vk_album_prev']);
                            }
                            
                            $pdo = $modx->getService('pdoTools');
                            
                            $modx->setPlaceholder($totalVar, count($response));
                            $response = array_slice($response, $offset, $limit, true);
                            
                            foreach($response[0]['sizes'] as $pic){
                                if($pic['width'] == 604)
                                    $preview = $pic['src'];
                            }
                            return $preview;
                        Что-то я не верно сделал. Терь у разных альбомов одна превью.

                        Кстати, можно вместо '' писать null? $output = null;
                        $output = '';
                        Дмитрий
                        14 февраля 2018, 11:28
                        0
                        У меня получается так, что превьюшка для всех альбомов одинаковая… А исправить не понимаю как…
                        Алексей Ерохин
                        14 февраля 2018, 11:43
                        +1
                        Это зависит от того, где сниппет вызывается, скорее всего просто $modx->resource->id одинаков. Замените на $album_id
                        Дмитрий
                        14 февраля 2018, 11:47
                        0
                        А ну да, я же вызываю альбомы все и там прошу картинки.
                        Ну я поменял, но всё-равно одна превьюшка на всё.
                        <?php
                        //VK API
                            $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
                            $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
                        
                            $response = $modx->cacheManager->get('vk_photos_preview_'.$modx->resource->$album_id, [xPDO::OPT_CACHE_KEY => 'vk_photos_preview']);
                            if(empty($response) || $request['refresh'] == 1) {
                                // Получаем превью альбома с ВК
                                $query = file_get_contents('https://api.vk.com/method/photos.getAlbums?owner_id=-'.$owner_id.'&album_ids='.$album_id.'&need_covers=1&photo_sizes=1');
                                $result = json_decode($query, true); // Декодируем полученный json массив
                            
                                $response = $result['response'];
                                $alb_preview= $modx->cacheManager->set('vk_photos_preview_'.$modx->resource->$album_id, $response, 3600, [xPDO::OPT_CACHE_KEY => 'vk_photos_preview']);
                            }
                            
                            foreach($response[0]['sizes'] as $pic){
                                if($pic['width'] == 604)
                                    $preview = $pic['src'];
                            }
                            return $preview;
                        Володя
                        14 февраля 2018, 11:52
                        +1
                        $modx->resource->$album_id
                        на
                        $modx->resource->id.$album_id
                        Дмитрий
                        14 февраля 2018, 11:55
                        0
                        Работает, спасибо!
                        Дмитрий
                        21 февраля 2018, 17:40
                        0
                        Окажите пожалуйста консультацию modx.pro/help/14706/
            Дмитрий
            31 января 2018, 12:34
            0
            Если я правильно понял, сделал так
            $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
                $result = json_decode($query, true); // Декодируем полученный json массив
                
                var_dump($result);
            Результат
            drive.google.com/open?id=1N8OiAMYFpUFjJXHP64w5vi3NYMm3SaJI
            Дмитрий
            31 января 2018, 12:28
            0
            <?php
            // VK API
                $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
                $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
                $rev = $modx->getOption('rev', $scriptProperties, '1'); // 1 - новые сверху
                $extended = $modx->getOption('extended', $scriptProperties, '0'); // Расширенные поля
                $feed_type = $modx->getOption('feed_type', $scriptProperties, 'photo'); // photo, photo_tag
                $count = $modx->getOption('count', $scriptProperties, ''); // Количество загружаемых фото
                $class = $modx->getOption('class', $scriptProperties, '');
                $tpl = $modx->getOption('tpl', $scriptProperties, '@INLINE <li><img src="[[+src_bigxx]]"></li>');
                
                $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count);
                $result = json_decode($query, true); // Декодируем полученный json массив
                
                $response = $result['response'];
                $output = '';
                $pdo = $modx->getService('pdoTools');
                
                $modx->setPlaceholder($totalVar, count($response));
                $response = array_slice($response, $offset, ($limit + $offset), true);
                
                foreach ($response as $res) {    
                    $res['class'] = $class;
                    $output .= $pdo->getChunk($tpl, $res);
                }
                return $output;
            Версия pdo последняя 2.10.4-pl.
        Дмитрий
        17 мая 2018, 21:42
        0
        Ребята, привет. Заметил, что полетел сниппет и тот, который берёт обложку альбома. Код на последний момент был такой. Сниппет ругался на

        Notice
        : Undefined index: response in
        /home/o/oooakg/kulibin.club/public_html/core/cache/includes/elements/modsnippet/86.include.cache.php
        on line
        22

        Notice
        : Undefined variable: output in
        /home/o/oooakg/kulibin.club/public_html/core/cache/includes/elements/modsnippet/86.include.cache.php
        on line
        35

        А это $result = json_decode($query, true); // Декодируем полученный json массив и return $output; строка
        Потом посмотрел через echo, что в $query и $result. В Пусто $result, а в $query ошибка запроса. Array выводит. В чём проблема? VK что-то типо изменила?
        {«error»:{«error_code»:5,«error_msg»:«User authorization failed: no access_token passed.»,«request_params»:[{«key»:«oauth»,«value»:«1»},{«key»:«method»,«value»:«photos.get»},{«key»:«owner_id»,«value»:"-114376384"},{«key»:«album_id»,«value»:«250351367»},{«key»:«rev»,«value»:«1»},{«key»:«extended»,«value»:«0»},{«key»:«feed_type»,«value»:«photo»},{«key»:«count»,«value»:""},{«key»:«v»,«value»:«5.73»}]}}

        <?php
        // VK API
            //ini_set('error_reporting', E_ALL);
            //ini_set('display_errors', 1);
            //ini_set('display_startup_errors', 1);
            $owner_id = $modx->getOption('owner_id', $scriptProperties, '0'); // Группа
            $album_id = $modx->getOption('album_id', $scriptProperties, '0'); // Альбом
            $rev = $modx->getOption('rev', $scriptProperties, '1'); // 1 - новые сверху
            $extended = $modx->getOption('extended', $scriptProperties, '0'); // Расширенные поля
            $feed_type = $modx->getOption('feed_type', $scriptProperties, 'photo'); // photo, photo_tag
            $count = $modx->getOption('count', $scriptProperties, ''); // Количество загружаемых фото
            $class = $modx->getOption('class', $scriptProperties, '');
            $tpl = $modx->getOption('tpl', $scriptProperties, '@INLINE <li><img src="[[+src_bigxx]]"></li>');
            
            $response = $modx->cacheManager->get('vk_photos_'.$modx->resource->id, [xPDO::OPT_CACHE_KEY => 'vk_photos']);
            if(empty($response) || $request['refresh'] == 1) {
                // Получаем фото с ВК
                $query = file_get_contents('https://api.vk.com/method/photos.get?owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count.'&v=5.73');
                $result = json_decode($query, true); // Декодируем полученный json массив
                
                $response = $result['response']['items'];
                $photos= $modx->cacheManager->set('vk_photos_'.$modx->resource->id, $response, 86400, [xPDO::OPT_CACHE_KEY => 'vk_photos']);
            }
            
            $pdo = $modx->getService('pdoTools');
            
            $modx->setPlaceholder($totalVar, count($response));
            $response = array_slice($response, $offset, $limit, true);
            
            foreach ($response as $res) {    
                $res['class'] = $class;
                $output .= $pdo->getChunk($tpl, $res);
            }
            return $output;
          Дмитрий
          17 мая 2018, 22:39
          0
          Я тут прочитал, что с 14 мая правила в API поменяли и токен нужно вводить.
          Теперь $query такого вида
          $query = file_get_contents('https://api.vk.com/method/photos.get?&access_token='.$access_token.'&owner_id=-'.$owner_id.'&album_id='.$album_id.'&rev='.$rev.'&extended='.$extended.'&feed_type='.$feed_type.'&count='.$count.'&v=5.73');
          и вначале переменная
          // vk.com/apps?act=manage МОИ приложения — Настройки — Сервисный ключ доступа
          $access_token = 'тут токе';
          Авторизуйтесь или зарегистрируйтесь, чтобы оставлять комментарии.
          31