@v1r_56
Самоучка в веб-программировании, начинал с Bitrix.

Из-за чего curl не работает на wordpress?

Разработал код который собирает сообщения в обсуждении группы вк, и транслирует ко мне на сайт через API vk.
Без cms систем все прекрасно пашет, летает.
Но как закидываю на сайт с WP сразу выходят ошибки.
Сам сайт построен на конструкторе Elementor. Весь код вывожу через 2 шорткода:
function commentsVKoriginal1()
{
    $token = "xxxxxxxxxx"; // access_token
    $group_id = xxxxxxxx; // ID Группы
    $topic_id = xxxxxxxxx; // ID Топика

    for ($i = 0; $i <= 12; $i++) {
        $get = curl('https://api.vk.com/method/board.getComments?group_id=' . $group_id . '&topic_id=' . $topic_id . '&extended=1' . '&offset=' . $i . '&sort=desc' . '&count=1&v=5.60&access_token=' . $token);
        $jsonGet = json_decode($get, true);

        $user_id = $jsonGet['response']['items'][0]['from_id']; // ID Автора
        $comments_id = $jsonGet['response']['items'][0]['id']; // ID комментария
        $date = $jsonGet['response']['items'][0]['date']; // Дата в unixtime
        $text = $jsonGet['response']['items'][0]['text']; // Текст
        $attachments = $jsonGet['response']['items'][0]['attachments']; // Прикрепленные файлы к записи
        $photo = $jsonGet['response']['profiles'][0]['photo_50']; // Фото Автора (50,100 и т.д.)
        $fname = $jsonGet['response']['profiles'][0]['first_name']; // Имя Автора
        $lname = $jsonGet['response']['profiles'][0]['last_name']; // Фамилия Автора
        $prov1 = gmdate("Y-m-d", $date);
        $prov2 = gmdate("Y-m-d", 1970 - 01 - 01);

        if ($prov1 == $prov2) {
            false;
        } else {
            ?>
            <div class="bp_post clear_fix ">
                <a class="bp_thumb" href="https://vk.com/id<?php echo $user_id; ?>">
                    <img class="bp_img" alt="<?php echo $fname . " " . $lname; ?>" src="<?php echo $photo; ?>">
                </a>
                <div class="bp_info">
                    <div class="bp_author_wrap">
                        <a class="bp_author"
                           href="https://vk.com/id<?php echo $user_id; ?>"><?php echo $fname . " " . $lname; ?></a>
                        <a class="bp_date"><?php echo gmdate("Y-m-d", $date); ?></a>
                        <span class="bp_topic"></span>
                    </div>
                    <div class="bp_content" id="">
                        <div class="bp_text"><?php echo $text; ?></div>
                        <div>
                            <?php
                            // проверяем, есть ли прикрепленые файлы в записи, далее берем только изображения, можно вывести опрос и т.п.
                            if ($attachments) {
                                foreach ($attachments as $attach) {
                                    echo '<a href="' . $attach['photo']['photo_1280'] . '" target="_blank">';
                                    echo '<img src="' . $attach['photo']['photo_604'] . '"height="223" style="margin:5px;">';
                                    echo '</a>';
                                }
                            }
                            ?>
                        </div>
                    </div>
                </div>
            </div>

            <?
        }
    }
}


add_shortcode('commentsVKoriginal1', 'commentsVKoriginal1');
function curl23($url)
{
    $ch = curl_init($url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    $response = curl_exec($ch);
    curl_close($ch);
    return $response;
}

add_shortcode('commentsVKoriginal2', 'curl23');

Скрин ошибки:
609ea925cd71e237401768.png
Сама библиотека curl подключена на сервере. Может с ВП есть какая то фича? Новичок на этой cms.
P.S. Ругается на строчку:
$get = curl('https://api.vk.com/method/board.getComments?group_id=' . $group_id . '&topic_id=' . $topic_id . '&extended=1' . '&offset=' . $i . '&sort=desc' . '&count=1&v=5.60&access_token=' . $token);
  • Вопрос задан
  • 182 просмотра
Решения вопроса 1
@galaxy
А что, есть функция curl() в природе?
В расширении curl - нет.
А у вас функция называется по-другому:
add_shortcode('commentsVKoriginal1', 'commentsVKoriginal1');
function curl23($url)
{
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
opium
@opium
Просто люблю качественно работать
надо поставить расширение php-curl наверно
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы