• Возможно ли составить подобный WP_User_Query?

    @denism300 Автор вопроса
    Smirator, да, спасибо. Такой вариант, думаю, подойдет
  • Возможно ли составить подобный WP_User_Query?

    @denism300 Автор вопроса
    мне надо, либо администратор, либо любая роль, но определенное значение мета-поля.
    а тут будет выбор всех админов с определенным значением мета-поля
  • Возможно ли составить подобный WP_User_Query?

    @denism300 Автор вопроса
    так а разве
    'relation' => 'OR',
    будет работать для 'role'?
    по-моему, в данном случае relation будет работать для нескольких условий в meta_query
    а мне надо, либо администратор, либо любая роль, но определенное значение мета-поля.
  • Возможно ли автоматически добавлять GET параметры ссылкам WP?

    @denism300 Автор вопроса
    Илья Салигжанов, если бы это было задание, я бы на бирже разместил :)

    add_action('pre_get_posts', 'catalog_filters');
    function catalog_filters($query)
    {
        if ($query->is_main_query() && $query->is_category('category-name-1')) {
            $foo = $_GET['goo'] ?? 'bar';
            $meta_query = array(
                array(
                    'key' => 'foo',
                    'value'   => $foo,
                )
            );
           $query->set('meta_query', $meta_query);
        }
    }

    но это не работает, если нет параметров в строке.
    Т.е., я попробовал в функцию добавить
    echo '<pre>' . print_r($query, 1) . '</pre>';
    первой строкой до if
    и если перейти по site.ru/category-name-1/item то ничего не выводится
    если к ссылке добавить любой параметр, например, site.ru/category-name-1/item?some=param
    то выводится query
  • Как удалить организацию в Яндекс 360 вместе с доменом?

    @denism300
    все, не работает больше. Перенаправляет в я360
  • Как считать измененный атрибут?

    @denism300 Автор вопроса
    спасибо!
    Заменил
    container.data('blocked');
    на
    container.attr('data-blocked');
    заработало.
  • Как считать измененный атрибут?

    @denism300 Автор вопроса
    как Вы это определили?

    в консоли, в разделе "Элементы" видно, что атрибут элемента изменяется

    Отладка
    6473943900ab8687486850.png
  • Как считать измененный атрибут?

    @denism300 Автор вопроса
    x-Four-x, не помогло
  • Почему возникает ошибка 400 при ajax запросе?

    @denism300 Автор вопроса
    Спасибо!
    Добавлю, что еще надо убрать
    dataType: 'json',
    иначе, обработчик не запускается
  • Почему не срабатывает тернарный оператор?

    @denism300 Автор вопроса
    Ипатьев, в общем, это была не ошибка.
    На каком-то этапе, видимо, когда не было проверки isset, данное предупреждение было выведено в value hidden полей и сохранено в базу.
    А дальше благополучно оттуда бралось и выводилось на экран.
  • Почему не срабатывает тернарный оператор?

    @denism300 Автор вопроса
    Ипатьев, я в курсе.
    Содержимое массива $s я привел, так же, как писал в вопросе, если заменить тернарный оператор на обычный if else, то все ок.
  • Почему не срабатывает тернарный оператор?

    @denism300 Автор вопроса
    Ипатьев,
    Notice:  Undefined index: priceweek in /(тут путь к файлу)/edit_listing.php on line 37
    Notice:  Undefined index: priceweek in /(тут путь к файлу)/edit_listing.php on line 38
    Notice:  Undefined index: price3 in /(тут путь к файлу)/edit_listing.php on line 42
    Notice:  Undefined index: price3 in /(тут путь к файлу)/edit_listing.php on line 43
    Notice:  Undefined index: price14 in /(тут путь к файлу)/edit_listing.php on line 52
    Notice:  Undefined index: price14 in /(тут путь к файлу)/edit_listing.php on line 53

    т.е., предупреждения на строки, где значения массива $s пустые
  • Почему не срабатывает тернарный оператор?

    @denism300 Автор вопроса
    Ипатьев, весь код данного блока.
    переменная $currency - символ валюты
    переменная $editing - id редактируемой записи
    <div class="publication-edit_fields-block season-prices_block">
        <div class="publication-edit_fields-head">
            <div class="publication-edit_fields-title">Сезонные цены</div>
        </div>
        <div class="publication-edit_fields-content">
            <div class="publication-edit_fields-table1">
                <div class="publication-edit_fields-table1_head">
                    <div class="publication-edit_fields-table1_row">
                        <div class="publication-edit_fields-table1_item">Временной период</div>
                        <div class="publication-edit_fields-table1_item">Сутки</div>
                        <div class="publication-edit_fields-table1_item">Выходные</div>
                        <div class="publication-edit_fields-table1_item">3-6 дней</div>
                        <div class="publication-edit_fields-table1_item">7-14 дней</div>
                        <div class="publication-edit_fields-table1_item">15-25 дней</div>
                        <div class="publication-edit_fields-table1_item">от 26 дней</div>
                        <div class="publication-edit_fields-table1_item"></div>
                    </div>
                </div>
                <div class="publication-edit_fields-table1_body">
                    <?php $seasonsData = get_post_meta($editing, 'seasonsData', 1); ?>
                    <?php if ($seasonsData) : ?>
                        <?php foreach ($seasonsData as $s) : ?>
                            <?php echo '<pre>' . print_r($s, 1) . '</pre>'; ?>
                            <div class="publication-edit_fields-table1_row">
                                <div class="publication-edit_fields-table1_item">
                                    <span>с <?php echo isset($s['start']) ? $s['start'] : ''; ?> по <?php echo isset($s['end']) ? $s['end'] : ''; ?></span>
                                    <input type="hidden" name="season-price-field_date-first" class="js-season-start season-price-field_date-first" value="<?php echo isset($s['start']) ? $s['start'] : ''; ?>">
                                    <input type="hidden" name="season-price-field_date-last" class="js-season-end season-price-field_date-last" value="<?php echo isset($s['end']) ? $s['end'] : ''; ?>">
                                </div>
                                <div class="publication-edit_fields-table1_item">
                                    <span class="season-price-field_currency js-price-currency"><?php echo $currency; ?></span>
                                    <span class="season-price-field_value"><?php echo isset($s['price']) ? $s['price'] : ''; ?></span>
                                    <input type="hidden" name="season-price-field_per-day" class="js-season-price season-price-field_per-day" value="<?php echo isset($s['price']) ? $s['price'] : ''; ?>">
                                </div>
                                <div class="publication-edit_fields-table1_item">
                                    <span class="season-price-field_currency js-price-currency"><?php echo $currency; ?></span>
                                    <span class="season-price-field_value"><?php echo isset($s['priceweek']) ? $s['priceweek'] : ''; ?></span>
                                    <input type="hidden" name="season-price-field_per-weekend" class="js-season-price-weekend season-price-field_per-weekend" value="<?php echo (isset($s['priceweek']) ? $s['priceweek'] : ''); ?>">
                                </div>
                                <div class="publication-edit_fields-table1_item">
                                    <span class="season-price-field_currency js-price-currency"><?php echo $currency; ?></span>
                                    <span class="season-price-field_value"><?php echo isset($s['price3']) ? $s['price3'] : ''; ?></span>
                                    <input type="hidden" name="season-price-field_per-3-6-day" class="js-season-price3 season-price-field_per-3-6-day" value="<?php echo isset($s['price3']) ? $s['price3'] : ''; ?>">
                                </div>
                                <div class="publication-edit_fields-table1_item">
                                    <span class="season-price-field_currency js-price-currency"><?php echo $currency; ?></span>
                                    <span class="season-price-field_value"><?php echo isset($s['price7']) ? $s['price7'] : ''; ?></span>
                                    <input type="hidden" name="season-price-field_per-7-14-day" class="js-season-price7 season-price-field_per-7-14-day" value="<?php echo isset($s['price7']) ? $s['price7'] : ''; ?>">
                                </div>
                                <div class="publication-edit_fields-table1_item">
                                    <span class="season-price-field_currency js-price-currency"><?php echo $currency; ?></span>
                                    <span class="season-price-field_value"><?php echo isset($s['price14']) ? $s['price14'] : ''; ?></span>
                                    <input type="hidden" name="season-price-field_per-15-25-day" class="js-season-price14 season-price-field_per-15-25-day" value="<?php echo isset($s['price14']) ? $s['price14'] : ''; ?>">
                                </div>
                                <div class="publication-edit_fields-table1_item">
                                    <span class="season-price-field_currency js-price-currency"><?php echo $currency; ?></span>
                                    <span class="season-price-field_value"><?php echo isset($s['price30']) ? $s['price30'] : ''; ?></span>
                                    <input type="hidden" name="season-price-field_per-26-day" class="js-season-price30 season-price-field_per-26-day" value="<?php echo isset($s['price30']) ? $s['price30'] : ''; ?>">
                                </div>
                                <div class="publication-edit_fields-table1_item">
                                    <button type="button" class="publication-edit_fields-table1_edit-btn" data-popup-src="season-price_popup-stage">
                                        <svg width="18" height="18" viewBox="0 0 18 18">
                                            <path d="M12.75 2.25023C12.947 2.05324 13.1808 1.89699 13.4382 1.79038C13.6956 1.68378 13.9714 1.62891 14.25 1.62891C14.5286 1.62891 14.8044 1.68378 15.0618 1.79038C15.3192 1.89699 15.553 2.05324 15.75 2.25023C15.947 2.44721 16.1032 2.68106 16.2098 2.93843C16.3165 3.1958 16.3713 3.47165 16.3713 3.75023C16.3713 4.0288 16.3165 4.30465 16.2098 4.56202C16.1032 4.81939 15.947 5.05324 15.75 5.25023L5.625 15.3752L1.5 16.5002L2.625 12.3752L12.75 2.25023Z" fill="#BDC8D3" />
                                        </svg>
                                    </button>
                                </div>
                            </div>
                        <?php endforeach; ?>
                    <?php endif; ?>
                </div>
            </div>
            <a href="#" class="publication-edit_season-prices_create-btn btn6" data-popup-src="season-price_popup-stage">
                <svg width="20" height="20" viewBox="0 0 20 20" fill="none">
                    <path d="M10.0013 18.3346C14.6037 18.3346 18.3346 14.6037 18.3346 10.0013C18.3346 5.39893 14.6037 1.66797 10.0013 1.66797C5.39893 1.66797 1.66797 5.39893 1.66797 10.0013C1.66797 14.6037 5.39893 18.3346 10.0013 18.3346Z" stroke="#384654" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
                    <path d="M10 6.66797V13.3346" stroke="#384654" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
                    <path d="M6.66797 10H13.3346" stroke="#384654" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" />
                </svg>
                <span>Создать сезонную цену</span>
            </a>
        </div>
    </div>


    В том же seasonData не может лежать потому что в нем по определению нет вложенного массива с индексом priceweek

    согласен, тупанул. это лежит в $s,
    seasonData - массив из таких $s
  • Почему не срабатывает тернарный оператор?

    @denism300 Автор вопроса
    Ипатьев, вроде, понятно написал.
    еще раз:
    1. в коде $s['priceweek'] упоминается дважды, допустим, это строки 5 и 6, оба раза в конструкциях
    echo isset($s['priceweek']) ? $s['priceweek'] : '';

    2.
    При чем здесь "в двух местах", если в сообщении об ошибке указано конкретное место?

    выводится два предупреждения для строк 5 и 6
    3.
    И при чем здесь вообще тернарный оператор? В сообщении об ошибке написано, что отсутствует индекс при обращении к массиву, а не отсутствует индекс при вызове тернарного оператора

    наверное, потому, что в тернарном операторе я проверяю наличие индекса, и если он существует, вывожу его значение.
    если isset($s['priceweek']) = false, то echo $s['priceweek'] не должно выполнятся, а должно выполнится echo '', соответственно обращения к несуществующему индексу не должно быть, соответственно, не должно быть предупреждения
  • Почему не срабатывает тернарный оператор?

    @denism300 Автор вопроса
    Илья, в seasonData лежит, к примеру, это:
    Array
    (
        [start] => 15.06.2023
        [end] => 30.06.2023
        [price] => 7654
        [priceweek] => 
        [price3] => 
        [price7] => 456
        [price14] => 
        [price30] => 345
    )
  • Почему не срабатывает тернарный оператор?

    @denism300 Автор вопроса
    Илья, в коде только в двух местах вызывается $s['priceweek'], где используется тернарный оператор.
    Если я комментирую эти строки или меняю на конструкцию с if, то все ок.
  • Как реализовать хранение информации в мета-полях записи?

    @denism300 Автор вопроса
    YBB, да, я в курсе, что сериализованные данные не возможно использовать в SQL запросах, именно поэтому и родилась идея обрабатывать в момент вывода.
    А про отдельную таблицу как-то и не подумал. Спасибо
  • Как заменить диски в RAID 1 на диски меньшего объема?

    @denism300 Автор вопроса
    tukreb, про разных производителей я в курсе - сталкивался
    Тут речь не о замене одного диска массива на меньший по объему, а о замене всех дисков.
  • Как заменить диски в RAID 1 на диски меньшего объема?

    @denism300 Автор вопроса
    алгоритм понятен, спасибо.
    Буду курить мануалы к контроллеру.
    Хотя, по идее, вместо того, чем заморачиваться с уменьшением текущих разделов и т.д., сразу перейти к варианту №2
  • Как добавить / в конце адреса?

    @denism300 Автор вопроса
    dodo512,
    ##
    
    # @package Joomla
    
    # @copyright (C) 2005 Open Source Matters, Inc. <https://www.joomla.org>
    
    # @license GNU General Public License version 2 or later; see LICENSE.txt
    
    ##
    
    ## Can be commented out if causes errors, see notes above.
    
    Options +FollowSymlinks
    Options -Indexes
    
    ## No directory listings
    
    <IfModule mod_autoindex.c>
    	IndexIgnore *
    </IfModule>
    
    ## Suppress mime type detection in browsers for unknown types
    
    <IfModule mod_headers.c>
    	Header always set X-Content-Type-Options "nosniff"
    </IfModule>
    
    ## Disable inline JavaScript when directly opening SVG files or embedding them with the object-tag
    
    <FilesMatch "\.svg$">
    <IfModule mod_headers.c>
    Header always set Content-Security-Policy "script-src 'none'"
    </IfModule>
    </FilesMatch>
    
    ## These directives are only enabled if the Apache mod_rewrite module is enabled
    
    <IfModule mod_rewrite.c>
    	RewriteEngine On
    
        ## Begin - Rewrite rules to block out some common exploits.
        # If you experience problems on your site then comment out the operations listed
        # below by adding a # to the beginning of the line.
        # This attempts to block the most common type of exploit `attempts` on Joomla!
        #
        # Block any script trying to base64_encode data within the URL.
        RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
        # Block any script that includes a <script> tag in URL.
        RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
        # Block any script trying to set a PHP GLOBALS variable via URL.
        RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
        # Block any script trying to modify a _REQUEST variable via URL.
        RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
        # Return 403 Forbidden header and show the content of the root home page
        RewriteRule .* index.php [F]
        #
        ## End - Rewrite rules to block out some common exploits.
    
        ## Begin - Custom redirects
        #
        # If you need to redirect some pages, or set a canonical non-www to
        # www redirect (or vice versa), place that code here. Ensure those
        # redirects use the correct RewriteRule syntax and the [R=301,L] flags.
        #
    
        RewriteBase /
    
        RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
        RewriteRule ^(.*)$ https://%1/$1 [R=301,L]
    
        RewriteCond %{REQUEST_URI} \..+$
        RewriteCond %{REQUEST_FILENAME} !-d
        RewriteCond %{REQUEST_FILENAME} -f
        RewriteCond %{REQUEST_URI} ^(.+)/$
        RewriteRule ^(.+)/$ /$1 [R=301,L]
    
        RewriteCond %{REQUEST_URI} !(.*)/$
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteCond %{REQUEST_URI} !\..+$
        RewriteRule ^(.*[^/])$ $1/ [L,R=301]
    
        RewriteRule ^slajder_na_glavnoj(?=/*|$) / [R=301,L]
        RewriteRule ^about/blagotvoritel_nost(?=/$|$) about/blagotvoritelnost [R=301,L]
        RewriteRule ^otpravit-zayavku(?=/$|$) /zakaz [R=301,L]
    
        RewriteCond %{REQUEST_FILENAME} !-f
        RewriteRule ^(.*)_(.*) /$1-$2 [L,R=301]
    
        
        ##
        # Uncomment the following line if your webserver's URL
        # is not directly related to physical file paths.
        # Update Your Joomla! Directory (just / for root).
        ##
    
        # RewriteBase /
    
        ## Begin - Joomla! core SEF Section.
        #
        # PHP FastCGI fix for HTTP Authorization, required for the API application
        RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
        # -- SEF URLs for the API application
        # If the requested path starts with /api, the file is not /api/index.php
        # and the request has not already been internally rewritten to the
        # api/index.php script
        RewriteCond %{REQUEST_URI} ^/api/
        RewriteCond %{REQUEST_URI} !^/api/index\.php
        # and the requested path and file doesn't directly match a physical file
        RewriteCond %{REQUEST_FILENAME} !-f
        # and the requested path and file doesn't directly match a physical folder
        RewriteCond %{REQUEST_FILENAME} !-d
        # internally rewrite the request to the /api/index.php script
        RewriteRule .* api/index.php [L]
        # -- SEF URLs for the public frontend application
        # If the requested path and file is not /index.php and the request
        # has not already been internally rewritten to the index.php script
        RewriteCond %{REQUEST_URI} !^/index\.php
        # and the requested path and file doesn't directly match a physical file
        RewriteCond %{REQUEST_FILENAME} !-f
        # and the requested path and file doesn't directly match a physical folder
        RewriteCond %{REQUEST_FILENAME} !-d
        # internally rewrite the request to the index.php script
        RewriteRule .* index.php [L]
        #
        ## End - Joomla! core SEF Section.
    
    </IfModule>
    
    ## These directives are only enabled if the Apache mod_rewrite module is disabled
    
    <IfModule !mod_rewrite.c>
    <IfModule mod_alias.c> # When Apache mod_rewrite is not available, we instruct a temporary redirect # of the start page to the front controller explicitly so that the website # and the generated links can still be used.
    RedirectMatch 302 ^/$ /index.php/ # RedirectTemp cannot be used instead
    </IfModule>
    </IfModule>
    
    ## GZIP
    
    ## These directives are only enabled if the Apache mod_headers module is enabled.
    
    ## This section will check if a .gz file exists and if so will stream it
    
    ## directly or fallback to gzip any asset on the fly
    
    ## If your site starts to look strange after enabling this file, and you see
    
    ## ERR_CONTENT_DECODING_FAILED in your browser console network tab,
    
    ## then your server is already gzipping css and js files and you don't need this
    
    ## block enabled in your .htaccess
    
    <IfModule mod_headers.c>
    	# Serve gzip compressed CSS files if they exist
    	# and the client accepts gzip.
    	RewriteCond "%{HTTP:Accept-encoding}" "gzip"
    	RewriteCond "%{REQUEST_FILENAME}\.gz" -s
    	RewriteRule "^(.*)\.css" "$1\.css\.gz" [QSA]
    
        # Serve gzip compressed JS files if they exist
        # and the client accepts gzip.
        RewriteCond "%{HTTP:Accept-encoding}" "gzip"
        RewriteCond "%{REQUEST_FILENAME}\.gz" -s
        RewriteRule "^(.*)\.js" "$1\.js\.gz" [QSA]
    
        # Serve correct content types, and prevent mod_deflate double gzip.
        RewriteRule "\.css\.gz$" "-" [T=text/css,E=no-gzip:1]
        RewriteRule "\.js\.gz$" "-" [T=text/javascript,E=no-gzip:1]
    
        <FilesMatch "(\.js\.gz|\.css\.gz)$">
        	# Serve correct encoding type.
        	Header append Content-Encoding gzip
    
        	# Force proxies to cache gzipped &
        	# non-gzipped css/js files separately.
        	Header append Vary Accept-Encoding
        </FilesMatch>
    
    </IfModule>