Я использую тему Boldy из Site5 на сайте версии 3.1.2.
Принцип работы этой темы заключается в том, что есть портфолио (которое я использую как галерею тематических исследований ), которое собирает сообщения из определенной категории, которую вы определяете в настройках темы (id = 98).
Это нормально, если вы также настроите блог в соответствии с инструкциями Boldy, где все сообщения в блоге попадают в категорию, называемую блогом, но это не собиралось давать мне слаги, которые я хотел, поэтому я решил использовать статическую страницу под названием блог, чтобы показать мои сообщения на.
Все это прекрасно работает, за исключением того факта, что сообщения, которые я создаю для своего портфолио/галереи тематических исследований (категория = тематические исследования), теперь также появляются в моем блоге.
Есть ли способ скрыть сообщения в определенной категории в блоге, но чтобы это не имело такого же эффекта в моей галерее тематических исследований?
—EDIT— С некоторой помощью Wyck через комментарии добился некоторого прогресса. Вот txt-версия файла index.php моих тем по умолчанию.
Если я вставлю следующее в строку 2:
<?php query_posts($query_string . '&cat=-98'); ?>
= Это приводит к тому, что сообщения не отображаются на моей странице загрузок, но все сообщения по-прежнему отображаются на странице моего блога.
Мне нужно наоборот. Я уверен, что я близок, но, возможно, мне нужно изменить строку, в которую я это поместил?
—EDIT x2— Теперь использую монитор загрузок для моей галереи загрузок. Но использую портфолио для своих кейсов. Итак, некоторые из ссылок выше изменились, но проблема точно такая же.
Итак, вы не хотите, чтобы загрузки появлялись в вашем основном блоге — вы это имеете в виду?
Да, это правильно. В долгосрочной перспективе я также буду использовать портфолио для страницы «кейс-стади». Поэтому мне также необходимо исключить сообщения о тематических исследованиях со страницы блога.
то, что вы хотите, может быть достигнуто путем изменения запроса для исключения определенной категории, но я не уверен в коде для его изменения, вероятно, это будет 4-5 строк.
хорошо, я думаю, что у меня это работает, скоро опубликую ответ. Мне нужно изучить ваш вопрос, какое поведение вы точно хотите, чтобы он делал на разных страницах.
@simon Взгляните на мой ответ и дайте мне знать, если он делает то, что вы хотите
Это сработало! Я не буду отмечать это как ответ, пока не проведу полное тестирование. Спасибо нагрузки Ashfame.
Здорово! В качестве теста проверьте разные страницы, на которых вы хотите, чтобы эти конкретные сообщения отображались или не отображались, и дайте мне знать 🙂
@Саймон Отлично! Ты даже не удосужился потратить несколько секунд, чтобы присудить награду.
Я думал, что пометив ответ как решенный, вы получите награду?
Извините, чувак, я пометил модератора, чтобы он перенаправил награду тебе. Впервые я использовал функцию вознаграждения. Я подумал, что это пошло к тому, что я отметил как ответ
Спасибо за это. Однако я не уверен, как это решает проблему? Новый файл шаблона все еще нуждается в настройке, чтобы удалить из него категорию? Почему бы нам просто не сделать это с index.php? Кроме того, где вы говорите мне добавить эту строку php, мне кажется, что вы открыли тег php, но не закрыли его?
@Simon Я отредактировал ответ и включил весь шаблон custom-page-blog.php. Этот шаблон покажет все сообщения не в категории 98.
Очень ценю ваши усилия здесь. Ваш подход выглядит так, как будто он сработает, однако ответ Ashfame не требует от меня создания нового файла шаблона, так что будет лучше? Еще тестирую…
Его подход великолепен и намного проще. Выберите то, что лучше всего подходит для вас.
В каком файле php это будет? Я выполнил поиск «query_posts» во всех файлах PHP в моей теме и не могу его найти.
query_posts изменяет «основной цикл» вашего блога (обычно index.php), вам придется добавить его самостоятельно. codex.wordpress.org/The_Loop
Спасибо, читал об этом. Q1 — Как узнать идентификатор категории? Нужно ли мне погружаться в таблицы базы данных? Q2 — Моя тема имеет свой собственный index.php. Все еще не уверен, в какую строку поместить query_posts: dekho.com.au/index.txt
Самый простой способ найти идентификатор категории — щелкнуть свою категорию в Admin и просто навести указатель мыши на одну из них, и вы увидите идентификатор при наведении курсора мыши или в своем браузере (в Chrome он отображается внизу).
Привет Вик. Я обнаружил, что категория, которую я хочу исключить, — это 98, но я не смог разместить ее в нужном месте в моем файле index.php (см. ссылку выше, чтобы увидеть код для этого файла). Есть идеи?
Я посмотрю на это. Хотя мне все еще нужен ответ на мой исходный вопрос, так как я снова буду использовать шаблон портфолио для категории для тематических исследований, поэтому все равно нужно знать, как исключить эту категорию из блога и только из блога.
Теперь я использую это для своих загрузок. Однако, согласно изменениям в моем вопросе, я использую портфолио для своих «кейсов». Та же проблема сохраняется, когда тематические исследования появляются в блоге.
Я использую статическую страницу, но я думаю, что она по-прежнему использует index.php для заполнения элементов на этой статической странице? Я проверил, покопавшись в произвольном тексте в index.php, и это отразилось в сообщениях блога на статической странице.
Вы хотите, чтобы категория 98 была исключена только на странице блога, верно? Они должны быть доступны непосредственно на странице категории (ваша страница загрузок), верно?
Вы можете попробовать это? Дайте мне знать, если это не то, что вы хотите, мы можем изменить его в соответствии с вашими потребностями. Это не только исключает категорию, в которой вы показываете свои сообщения в блоге.
В меню «Настройки» -> «Чтение», если на главной странице не настроено отображение «Последних сообщений», все, что выбрано в качестве страницы сообщений, будет использовать шаблон index.php.
Ваш комментарий верен, ваша «статическая страница» использует index.php
Чтобы использовать статическую страницу с настраиваемым шаблоном для публикации в блоге, измените настройки чтения следующим образом:
Изменить это:
К этому:
Для вашего пользовательского шаблона
просто скопируйте и вставьте index.php всоздайте новый файл и назовите его custom-page-blog.php и добавьте в него это.Перейдите на свою статическую страницу «Блог» и выберите новый шаблон в атрибутах страницы.
Трудно сказать, поскольку вы не предоставили код, но удалить категорию из цикла блога обычно очень просто.
Например, над основным циклом, если ваша категория «портфолио» имеет id=12:
Почему бы вам не использовать что-то вроде WordPress Download Monitor ?
если вы используете статическую страницу для отображения сообщения в блоге, добавьте код wyck в шаблон, который используется для этой страницы.