• Как передать значение переменной между файлами шаблона на wordpress?

    @Mario62
    Можно использовать $GLOBALS[ 'var' ] = '...';
    И затем где надо echo $GLOBALS[ 'var' ];
    Ответ написан
    Комментировать
  • Как получить название меню по его theme_location в wp_nav_menu?

    FreedomRun
    @FreedomRun
    веб-программист
    Попробуйте так:
    $theme_locations = get_nav_menu_locations(); // взяли все theme_location
    $menu_obj = get_term( $theme_locations['имя локации'], 'nav_menu' ); // ищем нашу theme_location
    $menu_name = $menu_obj->name; // получаем имя

    Взято с гугл дока: https://www.andrewgail.com/getting-a-menu-name-in-...
    Ответ написан
    Комментировать
  • Плавный display none?

    coderisimo
    @coderisimo Куратор тега JavaScript
    Вот вам всевозможные примеры.
    css3.bradshawenterprises.com/cfimg

    Суть : создаете классы с анимированными переходами через css. Назначаете эти классы элементу и наслаждаетесь эффектом.
    Ответ написан
    1 комментарий
  • Как добавить к произвольным записям мета бокс с редактором wordpress?

    @Chaly95 Автор вопроса
    Подумал еще раз)

    if( isset( $_POST[ 'ingredients-recipes-original' ] ) ) {
    update_post_meta( $post_id, 'ingredients-recipes-original', sanitize_text_field( $_POST[ 'ingredients-recipes-original' ] ) );
    }

    Нужно убрать функцию sanitize_text_field();

    Вот правильный коб
    function ingredients_meta() {
        add_meta_box( 'ingredients_meta',
            __('Ингредиенты'),
            'ingredients_meta_callback',
            'recipes',
            'advanced',
            'default' );
    }
    add_action('add_meta_boxes', 'ingredients_meta');
    
    function ingredients_meta_callback( $post ) {
        echo _e('<p>Требуемые Ингредиенты для приготовления</p>');
        wp_nonce_field( basename(__FILE__), 'ingredients_nonce');
        $ingredients_stored_meta = get_post_meta( $post->ID );
        wp_editor($ingredients_stored_meta['ingredients-recipes-original'][0], 'ingredients-recipes-original', array(
            'wpautop'       => 1,
            'media_buttons' => 1,
            'textarea_name' => 'ingredients-recipes-original', //нужно указывать!
            'textarea_rows' => 20,
            'tabindex'      => null,
            'editor_css'    => '',
            'editor_class'  => '',
            'teeny'         => 0,
            'dfw'           => 0,
            'tinymce'       => 1,
            'quicktags'     => 1,
            'drag_drop_upload' => false
        ) );
    }
    
    function ingredients_meta_save( $post_id ) {
    
        // Checks save status
        $is_autosave = wp_is_post_autosave( $post_id );
        $is_revision = wp_is_post_revision( $post_id );
        $is_valid_nonce = ( isset( $_POST[ 'ingredients_nonce' ] ) && wp_verify_nonce( $_POST[ 'ingredients_nonce' ], basename( __FILE__ ) ) ) ? 'true' : 'false';
    
        // Exits script depending on save status
        if ( $is_autosave || $is_revision || !$is_valid_nonce ) {
            return;
        }
    
        // Checks for input and sanitizes/saves if needed
        if( isset( $_POST[ 'ingredients-recipes-original' ] ) ) {
            update_post_meta( $post_id, 'ingredients-recipes-original',  $_POST[ 'ingredients-recipes-original' ]  );
        }
    }
    add_action( 'save_post', 'ingredients_meta_save' );
    Ответ написан
    1 комментарий
  • WP как из одной страницы вывести контент на главную страницу?

    Kozack
    @Kozack Куратор тега WordPress
    Thinking about a11y
    https://wp-kama.ru/function/get_post
    Но не забудьте добавить фильтр
    $post = get_post( $id );
    echo apply_filters( 'the_content', $post->post_content );
    Ответ написан
    Комментировать
  • Форматирование кода в phpstorm, возможно ли автоматизировано так выравнивать код?

    zorro76
    @zorro76
    Все очень просто – выделите фрагмент кода, который надо отформатировать и нажмите Ctrl+Alt+L, либо воспользуйтесь меню (Code -> Reformat code…)

    кроме того File -> Settings -> Code Style здесь вы можете настраивать отображение кода
    Ответ написан
    8 комментариев
  • Как сделать табличный вывод товаров woocommerce?

    @divan87
    Не знаю, может кому то будет полезно еще. Тоже столкнулся с этой проблемой. Решена она была тем, что начальные тэги таблиц:
    <table class="shop_table cart" cellspacing="0">
      <thead>
        <tr>
          <th class="product-name"><?php _e( 'Product', 'woocommerce' ); ?></th>
          <th class="product-price"><?php _e( 'Price', 'woocommerce' ); ?></th>
          <th class="product-price"></th>
        </tr>
      </thead>
    
       <tbody>

    был помещен в другой файл в этом шаблоне - loop/loop-start.php.
    Ну и соответственно конечный тэг таблицы был помещен в loop/loop-end.php. После этого все заработало как надо.
    Ответ написан
    2 комментария
  • Как узнать id категории определённой записи Wordpress?

    Alexufo
    @Alexufo
    противоречивый, сложный, весь компьютерный.
    <?php
    $category = get_the_category(); 
    echo $category[0]->cat_ID;
    ?>


    Если быть точным)
    Ответ написан
    3 комментария
  • Как имитировать клик по элементу на JQuery?

    cha-cha
    @cha-cha
    trigger("click") на самом деле просто стреляет клик-эвент.
    Используйте .click().

    $('#new a')[0].click();
    Ответ написан
    3 комментария
  • Выравнивание bootstrap меню по центру?

    @omelchenkosp
    style.css :
    .navbar-nav {
    float: none;
    text-align: center;
    }
    .navbar-nav li {
    float: none;
    display: inline-block;
    }
    Ответ написан
    2 комментария
  • Существует ли тенденция на неадекватные требования на позиции Automation QA?

    1) Сложность проектов постепенно растет, так как системы становятся все более обширными, многоканальными, интерактивными и так далее.

    2) Сложные системы требуют более опытных и способных специалистов. Поэтому начальный уровень человека, который может войти в индустрацию повышается.

    3) Большинство владельцев бизнеса думают, что новичкам можно мало платить. Но тут проблема в том, что текущие новички, это мидлы года 4-5 тому назада. Отсюда недопонимание.

    4) Ну и если специалисту платят много денег, то его хотят драть в три шкуры. Ибо раз высокая зп, то давай и продуктивность выше.

    5) Всегда есть жопные проекты и жопные позицию, поэтому надо стремиться понять, где трахают, а где можно работать комфортно и занимать комфортные позиции.
    Ответ написан
    Комментировать
  • Почему многие говорят учить python вместо php?

    glaphire
    @glaphire
    PHP developer
    Одна из трудностей что меньше качественных материалов для изучения на нем, часто надо быть знакомым с java, чтобы черпать правильную информацию. С определенного момента php перестает быть решающим фактором в развитии, потому что для хорошей работы нужно еще много смежных знаний - базы, фронтенд, инфраструктура, архитектура и бизнес-процессы, после этого php превращается лишь в инструмент решения задач
    Ответ написан
    Комментировать
  • Почему многие говорят учить python вместо php?

    @aby125
    Я как человек, который постоянно находится в телеге в чатах по поиску работы и на пхп, и на джанго скажу, что наоборот, лучше на пхп начинать.
    На питоне тяжелее найти первую работу, очень многие ноют, что не могут её найти. Зайди в джанго чат по поиску работы(достаточно уютненький) и посиди там, увидишь это сам.
    На пхп проще первую работу найти. Почему так? У пхп грубо говоря две ниши, это обычные сайты/магазины на cms и более сложные сайты-сервисы на фреймворках, а у питона одна ниша в беке, это как раз те же самые более сложные сайты на фреймворках. Туда с полного нуля плохо берут, что на пхп, что на питоне. Т.е. чисто стартануть карьеру проще на пхп, проще найти первую работу(а это очень важно) и не слиться. А когда дорастешь до более сложных сайтов, то сможешь переходить хоть на питон с джанго, хоть на пхп. Никаких проблем не будет. Вообще, язык это инструмент, не надо на нём зацикливаться. При желании можешь одновременно всё это осваивать, тем самым расширив количество потенциальных вакансий.
    Так же, тут есть небольшое исключение. Если понимаешь, что сможешь попасть на стажировку в крупную компанию по типу яндекса и дальше оттуда будешь развивать карьеру, то можно и с питона начинать, там обычно он используется, а не пхп. Но тут есть риск слиться, подумав, что программирование, это не твоё.
    А так, смотря кто говорит. Очень много статей, блоггеров в ютубе, которые советуют питон. Но берут они это не с реального опыта трудоустройства/старта карьеры в странах СНГ, а переводят зарубежные ролики/статьи. А так же друзья твои могут говорить, потому что сами начитались.(они так же могут работать программистами, например, фронтэндерами, но плохо представлять, как проще начинать карьеру в беке)
    Ответ написан
    Комментировать
  • Как сделать колонки одинаковой высоты в Bootstrap3?

    @proskurninra
    Решение тут css.yoksel.ru/flexbox

    Я сделал и у меня решилась подобная проблема.
    Для этого я в css создал класс row-flex
    .row-flex {
        display: flex;
        flex-flow: row wrap;
    }

    и в html применил класс row-flex
    <div class="container-fluid">
        <div class="row row-flex">
            <div class="col-lg-3 col-md-4 col-sm-6 col-xs-12">
                ... содержимое блока ...
            </div>
        </div>
    </div>

    всё работает!
    Ответ написан
    3 комментария
  • Как перенести вниз описание главной страницы магазина Woocommerce?

    MaximusDem
    @MaximusDem
    Начинающий разработчик
    Для категорий и подкатегорий работает этот хук
    remove_action( 'woocommerce_archive_description', 'woocommerce_taxonomy_archive_description', 10 );
    add_action( 'woocommerce_after_shop_loop', 'woocommerce_taxonomy_archive_description', 100 );

    Должно и для главной работать, как и написал WP Panda

    P.S. На самый крайний случай, посмотрите к какому хуку можно привязать свою функцию (https://businessbloomer.com/woocommerce-visual-hoo...
    и напишите нечто вроде
    add_action( 'woocommerce_single_product_summary', 'my_theme_my_action', 41 );
    function my_theme_my_action() { 
      echo '<div class="">Код какой нужно вставить</div>';
    }


    где woocommerce_single_product_summary нужно заменить нужным хуком (данный отвечает за расположение на странице товара, 41 - позиция)

    PPS. А если выводить этот текст надо только на главной, сделайте проверку по ИД страницы
    Ответ написан
    3 комментария
  • Как вывести надпись, если цена равна 0 Woocommerce?

    @kastembay Автор вопроса
    Русич
    Помогли решить так
    add_filter( 'woocommerce_get_price_html', 'product_price_free_zero_empty', 100, 2 );
    
    function product_price_free_zero_empty( $price, $product ){
    if ( '' === $product->get_price() || 0 == $product->get_price() ) {
        $price = '<span class="woocommerce-Price-amount amount">Цену уточняйте</span>';
    }
    return $price;
    }
    Ответ написан
    4 комментария
  • Как вернуть 2 значения в PHP return?

    SerafimArts
    @SerafimArts
    Senior Notepad Reader
    Вариант 1 - Деструктуризация:
    // Возврат нескольких значений:
    function some() {
        return [23, 42];
    }
    
    // Получение
    [$a, $b] = some();
    
    \var_dump($a, $b);


    Вариант 2 - Деструктуризация с ключами:
    // Возврат нескольких значений:
    function some() {
        return ['a' => 23, 'b' => 42];
    }
    
    // Получение
    ['a' => $a, 'b' => $b] = some();
    
    \var_dump($a, $b);


    Вариант 3 - Генераторы с ключами:
    function some() {
        yield 'a' => 23;
        yield 'b' => 42;
    }
    
    foreach (some() as $key => $value) {
      echo $key . ':' . $value; // a:23 b:42
    }


    Вариант 4 - Генераторы без ключей:
    function some() {
        yield 23;
        yield 42;
    }
    
    foreach (some() as $value) {
      echo $value; // 23 42
    }


    Вариант 5 - Генераторы с возвратом:
    function some() {
        yield 23;
        return 42;
    }
    
    $value = some();
    echo $value->current(); // 23
    $value->next();
    echo $value->getReturn(); // 42


    Вариант 6 - DTO:
    class DataTransferObject
    {
        private $a;
        private $b;
    
        public function __construct($a, $b)
        {
            $this->a = $a;
            $this->b = $b;
        }
    
        public function getA()
        {
            return $this->a;
        }
    
        public function getB()
        {
            return $this->b;
        }
    }
    
    function some() {
        return new DataTransferObject(23, 42);
    }
    
    $value = some();
    echo $value->getA(); // 23
    echo $value->getB(); // 42


    И ещё куча всяких вариантов, но мне влом придумывать уже)
    Ответ написан
    4 комментария
  • Как задать размер изображения в тэге?

    @Fedechkin
    электрик,усусь на front
    5f54c4fce58ec341271837.jpeg
    вот как решается подобная ситуация

    ul.counter {
    font-size: 55px; /* грубость текста */
    list-style: none; /* уберает стандартные маркеры */
    }

    ul.counter li:before {
    content: ''; /* для отображения контента в данном солучаи - background: url(./imeg/jVfPr0P4gm0.jpg); */
    display: inline-block; /* тоже необходим для отображения нашего изображения */
    width: 150px;
    height: 150px;
    background: url(./imeg/jVfPr0P4gm0.jpg); /* путь к нашему изображению */
    background-size: contain; /* для отображения изображения в указанных нами размерами width: 150px; height: 150px; */
    }
    Ответ написан
    Комментировать
  • Как ускорить скорость загрузки сайта, метрика и движовосайт тянут вниз?

    HeadOnFire
    @HeadOnFire
    PHP, Laravel & WordPress Evangelist
    Отложить загрузку на 5 секунд - выход, но грубоватый (имхо конечно). Я делаю по-другому - оборачиваю код в скролл-ивент + задержка в 1 секунду. То есть, сайт загрузился быстро, и как только пользователь начал скроллить хоть чуть-чуть - секундный таймаут и загрузка дополнительных ресурсов. Гугл доволен, пользователи вообще не замечают задержки:

    var fired = false;
    
    window.addEventListener('scroll', () => {
        if (fired === false) {
            fired = true;
            
            setTimeout(() => {
                // Здесь все эти тормознутые трекеры, чаты и прочая ересь,
                // без которой жить не может отдел маркетинга, и которые
                // дико бесят разработчиков, когда тот же маркетинг приходит
                // с вопросом "почему сайт медленно грузится, нам гугл сказал"
            }, 1000)
        }
    });
    Ответ написан
    29 комментариев