Jump to content

hedgehog

Expert
  • Posts

    1,110
  • Joined

  • Last visited

  • Days Won

    14

Everything posted by hedgehog

  1. "тест на php" это что? просто код или какая-то песочница для выполнения кода? Если просто форматированный код, то плагинов вагон https://wordpress.org/plugins/tags/sourcecode/ а вообще лучше создавать отдельную тему по своей проблеме
  2. Не кажется. Подменять raw query это крайний случай, когда нет других способов. Тем более, в вашем примере лимиты указаны неправильно - будут показываться все те же 20 постов каждый раз, на любой странице, см LIMIT: https://dev.mysql.com/doc/refman/5.7/en/select.html А конкретнее - потому что в новый запрос не передается "paged" поэтому он всегда отображает последние 20 постов. А передавать этот параметр в этом конкретном случае особого смысла нет: в некоторых случаях будет 404я ошибка, например если значение posts_per_page в новом запросе меньше, чем в оригинальном запросе. Задача простая: задать posts_per_page ДО выполнения основного запроса. Либо указав значение в Settings>Readings, либо используя тот же pre_get_posts (если нужно изменить только для конкретного случая, например для отображения терминов в таксономии book) Пример для таксономии book: add_action('pre_get_posts', 'posts_per_book_tax_page'); function posts_per_book_tax_page($query) { if ( is_admin() || !$query->is_main_query() ) return; if ( $query->is_tax('book') ) $query->set('posts_per_page', 20); } Больше про Conditional Tags (а-ля is_tax): https://codex.wordpress.org/Conditional_Tags PS: Проверкa на is_main_query() ОБЯЗАТЕЛЬНА. PPS: кстати, в 4.1 добавили свою функцию: the_posts_pagination Главный вопрос: вся эта музыка с лимитом 20 постов на страницу - затевается для ВСЕХ страниц, или для конкретных? Если для конкретных - то для каких (категории, теги, иные архивы)?
  3. Нужно немного почитать про Loop: https://www.elegantthemes.com/blog/tips-tricks/the-wordpress-loop-explained-for-beginners Вывод статей по рубрике/тегу происходит автоматически при открытии страницы тега или рубрики. Как это работает: https://developer.wordpress.org/themes/basics/template-hierarchy/ Если нужно вывести посты по тегу или категории ВНЕ стандартных шаблонов, то нужно почитать про WP_Query, get_posts и в принципе про циклы: https://codex.wordpress.org/The_Loop#Multiple_Loops_in_Action https://codex.wordpress.org/Class_Reference/WP_Query
  4. Параметр paged передается? Если не хочется заморачиваться, можно поставить плагин WP Pagenavi, который умеет генерить ссылки для навигации. Просто где-нибудь внизу/вверху страницы добавить код а-ля: <?php if ( function_exists('wp_pagenavi') ) wp_pagenavi(); ?> posts_per_page указывается в настройках Settings > Reading, если нужно изменить количество постов для какого-то конкретного архива, можно использовать фильтр pre_get_posts чтобы не обращаться к БД повторно. Вышеописанное актуально для стандартных циклов (Loop) Я бы не трогал в этом случае лимиты. Зачем велосипедить, если вордпресс сам отлично справляется, зная № страницы и количество отображаемых постов?
  5. get_posts не делает поиск по цене, вопрос не совсем корректно поставлен. в примере видно, что выборка идет по значению поля _price (я без понятия это regular или sale). я думаю, можно два поля совместить в запросе с оператором OR. т.е. либо regular price в заданном диапазоне, либо sale price:https://codex.wordpress.org/Class_Reference/WP_Meta_Query см. параметр relation
  6. Я же ссылку привел, там написасано что это уникальное имя скрипта:
  7. Найдите handle, через который подключается стиль темы и укажите его в зависимостях: https://developer.wordpress.org/reference/functions/wp_register_script/ Например: wp_register_style( 'NSN_WooExtSearch_common_styles', $this->m_plugin_url . 'css/nsn_woo_ext_search_style.css', array('theme-script-handle') );
  8. Как вариант - внести правки в скрипт и подменять скрипт плагина на свой (wp_deregister_script/wp_register_script)
  9. Если бы никому не нужно было "писать сайт", нас бы не было. Далеко не всем подходит функционал готовых решений. Если тебе для сайта-визитки достаточно скачать даже бесплатный шаблон, то мои клиенты на такое не готовы - у них для сайта конкретные требования, которые нужно реализовать. Плюс, вполне определенные требования по дизайну, а не "возьму готовую тему и мой сайт будет выглядеть как еще несколько сотен сайтов".
  10. https://developer.wordpress.org/reference/functions/add_image_size/ см. параметр $crop, который, в случае true, сжимает и обрезает картинку точно до указанных размеров (если она больше, конечно)
  11. редактирование сторонней темы - печальная затея, если тему планируется обновлять. генерится все это дело в файле "./inc/theme-options.php", функция catchbox_assets. если идея в том, что хочется редактировать основную тему - то можно править прямо здесь (и убрать предыдущий код) если работать с дочерней темой, то можно определить свою функцию "catchbox_footer_content", которая будет выводить нужные копирайты
  12. Надеюсь, тема редактируется как дочерняя? remove_action( 'catchbox_site_generator', 'catchbox_footer_content', 15 );
  13. Можно сделать как-то так [lang ar=ليبيا‎" en="Lybia]Ливия[/lang] При помощи https://codex.wordpress.org/Shortcode_API
  14. сохраняй рецепты как отдельный тип постов, которые будут переводиться тем же Polylang. Потом прикрути какой-нибудь шорткод для вставки рецепта в текст, с выбором языка )
  15. Из плагинов, которыми я пользовался: платный: WPML бесплатный: Polylang
  16. Вот так можно подключить jQuery <?php wp_enqueue_script('jquery'); ?>а по-хорошему - подключать свой скрипт в футере (см. последний аргумент - true) и использовать API, указав в зависимостях jQuery. Это для functions.php (или куда ты хуки пишешь): add_action('wp_enqueue_scripts', 'theme_enqueue_scripts');function theme_enqueue_scripts() { wp_enqueue_script( 'stickers', get_template_directory_uri() . '/js/stickers.js', array('jquery), '1.0', true );}Параметры см тут: https://developer.wordpress.org/reference/functions/wp_enqueue_script/ Обычно незачем перетирать встроенную в вордпресс jquery библиотеку, а если даже есть зачем - то не так топорно.
  17. Все смешалось - люди, кони. Я так понимаю, это попытка вывести новости на странице? Для этого можно у post_type включить опцию has_archive, тогда по ссылке /{slug}/ будут выводиться посты этого типа. В данном случае ссылка наверное будет выглядеть как /news/ По умолчанию будут использоваться шаблоны в таком порядке: index.php > archive.php > archive-{posttype}.php Если нужно обязательно использовать кастомный шаблон страницы, то добавляй поле, в котором пользователь будет выбирать какой именно контент будет выводиться. Например, выпадающий список: новости, каталоги и тд
  18. Контент слайдера относится непосредственно к статье? Если да, то можно добавить что-то вроде: Дополнительное текстовое (напр. WYSIWYG) поле для контента слайдов, или там шорткодаДополнительные поля для добавления слайдов в статью (а-ля ACF repeater)Если слайды идут отдельным типом постов, то посредством плагинов Advanced Custom Fields или Posts 2 Posts выбирать их при редактировании страницы (т.е. что-то вроде relationship - статья хранит только ссылки на посты-слайдеры, привязанные к статье) Если нет, то это может быть просто блок, выводящий все/последние/рандомные слайды из соответствующего типа контента, ну или виджет. PS: Выше я видел шорткод, который выводит слайды по категории. Почему бы просто не добавить поле со списком категорий? Пользователь просто выбирает категорию слайдов - и слайды из этой категории уже выводятся тем плагином, который используется. Если вопрос в том, как получить данные поля статьи ВНЕ цикла, то get_queried_object_id() - то, что нужно. Главное, если используются дополнительные циклы - чтобы они сбрасывались корректно...
  19. код видно не весь... левая часть вообще вырезана, непонятно откуда берется $img - похоже что это выводятся категории, а картинки редактируются в самих категориях.
  20. при редактировании страницы/записи над редактором есть кнопка "Add Media". Жмем, создаем галерею, вставляем галерею в нужное место. Дальше - только застилить. При необходимости можно изменить HTML структуру галереи. Для этого я добавлял параметр "тип", чтобы при выборе определенного типа галереи она отображалась как мне надо. Во многих случаях может подойти готовый плагин-слайдер, см https://wordpress.org/plugins/search.php?q=slider А вообще - вариантов масса. В зависимости от потребностей и возможностей.
  21. Бывает, что хостер запрещает слать почту с сервера. Как вариант - попробуй слать почту через внешний SMTP, например, через гугловый. Недавно пользовался этим плагином: https://wordpress.org/plugins/postman-smtp/ А, черт, не дочитал... Попробуй отправить сам почту: http://php.net/manual/en/function.mail.php И еще - с какого ящика Ворпдресс пытается слать письма? В смысле, отправитель какой?
  22. Наверное, как-то так: https://codex.wordpress.org/Function_Reference/get_categories См. агрумент parent
  23. Можно отредактировать файлик CSS из темы (шаблона). Просто и сердито. Но, если после этого обновишь тему - твои все правки уйдут в небытие Если хочется сохранить возможность обновления темы, то я бы рекомендовал сделать дочернюю тему, а в ней уже колдовать как угодно: https://codex.wordpress.org/Child_Themes
  24. hedgehog

    ajax + wordpress

    Потому что action неправильный. Красным выделено, при какой переменной "action" будет выполнен колбек "citiesView". add_action('wp_ajax_postview_citiesView', 'citiesView'); <input type="hidden" value="postview_citiesView" name="action">
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy