Изменить массив аргументов php в зависимости от ширины окна - PullRequest
0 голосов
/ 06 января 2020

Я использую javascript для определения ширины окна:

   <script type="text/javascript">  
        if ($(window).width() > 1200) {
            document.getElementById("box").innerHTML="1140";}
        else if ($(window).width() > 1050 && $(window).width() < 1199) {
            document.getElementById("box").innerHTML="970";}
        else if ($(window).width() > 820 && $(window).width() < 1049) {
            document.getElementById("box").innerHTML="760";}
    </script>

Это работает, но мне нужно изменить массив php в зависимости от ширины монитора.

    <?php $args = array(
         'post_type'      => 'post',
         'posts_per_page' => 6,
    ); ?>

Поэтому «Пост на страницу» должен меняться в зависимости от ширины монитора

Как поместить аргумент Пост на страницу во внутренний HTML или как сделать это другим аналогичным способом

1 Ответ

0 голосов
/ 06 января 2020

Вы можете достичь этого с помощью ajax. Вот пример:

index. html

<html>
    <head>
        <title>Test</title>
        <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
    </head>
    <body>
        <script type="text/javascript"> 
            function sendParams(arg) {
                $.post('test.php', {params: arg}, function(data) { 
                    console.log(data);
                });
            } 
            if ($(window).width() > 1200) {
                sendParams("1140");
            }
            else if ($(window).width() > 1050 && $(window).width() < 1199) {
                sendParams("970");
            }
            else if ($(window).width() > 820 && $(window).width() < 1049) {
                sendParams("760");
            }
        </script>
    </body>
</html>

test. php

<?php
    if(isset($_POST['params'])) {
        $args = array(
         'post_type'      => 'post',
         'posts_per_page' => $_POST['params']
        );
    }
?>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...