• Categories
  • Recent
  • Popular
  • Users
  • Search
  • FingerprintSwitcher
  • CustomServers
  • AutomationPlugins
Skins
  • Light
  • Default
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Quartz
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Slate
  • Solar
  • Superhero
  • Vapor
Collapse

Bablosoft

Способ загрузки файла на свой WP сайт через POST запрос

Scheduled Pinned Locked Moved Other
1 Posts 1 Posters 438 Views
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • NikolasN Online
    NikolasN Online
    Nikolas
    wrote on last edited by
    #1

    Т к не всегда удобно юзать способ загрузки через FTP какого либо файла например на свой WP сайт , то в данном примере покажу как это сделать юзая POST запрос, что по моим тестам намного удобнее и работает быстрей и с меньшим количеством ошибок.

    В данном примере реализовано для загрузки webp файла (файл картинки в формате webp) на свой WP сайт.

    Но при желании можете переделать код и строки пост запроса под загрузку любого файла с нужным вам расширением.

    spoiler

    Вобщем в своей WP сайте, в файле вашей темы functions.php нужно добавить внизу строки кода .

    Но перед этим надо в приведённом коде поменять:

    • В коде нужно поменять vash_parol на вами желаемый пароль, который будете использовать в post запросе чтоб ваш сайт спрашивал пароль, а пост запрос отвечал этим паролем (это для минимальной безопасности нужно)

    • а также в коде нужно текст all_webp_images поменять на имя той папки (или текст пути, если конечная папка куда хочешь грузить картинку лежит не сразу ниже домена) на вашем сайте куда вы хотите что загрузился wepb файл картинки
      В моем примере в коде прописано что файл картинки будет сохраняться сразу в папку с именем all_webp_images которая лежит сразу после домена, то есть вот тут: https://доменсайта.ru/all_webp_images

    Код: для добавления в файл functions.php:

    add_action('init', 'handle_webp_upload_via_file');
    
    function handle_webp_upload_via_file() {
        // Проверяем, что в запросе есть ?action=upload_webp_file
        if ( isset($_GET['action']) && $_GET['action'] === 'upload_webp_file' ) {
    
            // 1. Проверяем "секрет"
            if ( !isset($_POST['secret']) || $_POST['secret'] !== 'vash_parol' ) {
                echo 'Error: wrong or empty secret!';
                exit;
            }
    
            // 2. Проверяем наличие имени файла (передаётся как $_POST['filename'])
            if ( !isset($_POST['filename']) || empty($_POST['filename']) ) {
                echo 'Error: no filename provided!';
                exit;
            }
            $filename = sanitize_file_name( $_POST['filename'] );
            // Если нет ".webp" — добавляем
            if ( strpos($filename, '.webp') === false ) {
                $filename .= '.webp';
            }
    
            // 3. Проверяем, что что-то пришло в $_FILES['myfile']
            if ( !isset($_FILES['myfile']) || $_FILES['myfile']['error'] !== UPLOAD_ERR_OK ) {
                echo 'Error: no file or upload error!';
                exit;
            }
    
            // Путь к папке
            $upload_dir = ABSPATH . 'all_webp_images/';
            if ( !file_exists($upload_dir) ) {
                @mkdir($upload_dir, 0755, true);
            }
    
            $filepath = $upload_dir . $filename;
    
            // move_uploaded_file — перемещаем загруженный файл
            $res = move_uploaded_file($_FILES['myfile']['tmp_name'], $filepath);
            if ($res) {
                echo 'Success! File saved as ' . $filename;
            } else {
                echo 'Error: cannot move uploaded file!';
            }
    
            exit;
        }
    }
    

    Далее нам надо юзать кубик post запроса с такими заполнениями полей:

    • url (всегда будет такой, поэтому в нём меняйте только на домен вашего сайта):
    https://доменсайта.ru/?action=upload_webp_file
    
    • ставим птичку "конструктор данных запроса"

    • Post Data (тут замените только vash_parol на ваш пароль что в коде также указали)

    "secret","vash_parol","filename",[[NAME]],"myfile","file://" + [[PYT]]
    

    где :

    • [[NAME]] будет стоять имя вашего webp файл картинки но без указания в переменой [[NAME]] расширения webp. После выполнения такого пост запроса отправляемая webp картинка будет лежать на сайте вот тут: https://доменсайта.ru/all_webp_images/[[NAME]].webp

    • в переменой [[PYT]] сохраняем строку пути к файлу webp картинки на вашем локальном компе, которую вы хотите загрузить на свой сайт

    тип содержимого:

    multipart
    

    рабочий заполненный пример (то что подчёркнуто нужно заменить на ваше):
    tghghghg.png

    1 Reply Last reply
    👏
    0
  • ModeratorM Moderator moved this topic from Off topic on

  • ModeratorM

    Некоторые изменения на форуме: Карма, репорты, борьба с мошенниками, новые темы

    Scheduled Pinned Locked Moved Other
    3 Votes
    1 Posts
    489 Views
    No one has replied
  • L

    Не правильно работают http запросы на виртуалке

    Scheduled Pinned Locked Moved Other
    0 Votes
    1 Posts
    508 Views
    No one has replied
  • K

    Что то не могу найти сайт который показывает какой клик - js или нет ...

    Scheduled Pinned Locked Moved Other
    0 Votes
    1 Posts
    501 Views
    No one has replied
  • S

    Промокоды на бесплатный / очень дешевый и качественный хостинг, VPS и выделенные серверы с хорошей скидкой.

    Scheduled Pinned Locked Moved Other
    0 Votes
    1 Posts
    846 Views
    No one has replied
  • G

    Доброго времени суток господа. Инстаграм принадлежит Фейсбук, а значит и в инсте антиботы стоят как и там. А значит без отпечатка браузера все акк мрут. Тот скрипт который продают, в описание ни слова про это. И инсту не обязательно на номер регать.

    Scheduled Pinned Locked Moved Other
    0 Votes
    1 Posts
    590 Views
    No one has replied
  • Login

  • Don't have an account? Register

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Popular
  • Users
  • Search
  • FingerprintSwitcher
  • CustomServers
  • AutomationPlugins
  • Login

  • Don't have an account? Register

  • Login or register to search.