Intereting Posts
Цикл WordPress, показывать только одно сообщение на пользовательское поле Функция, например is_registration_page, чтобы проверить, является ли текущая страница страницей регистрации Как передать текущие термины таксономии в новый WP_Query? Как добавить новые параметры редактирования в редактор изображений? Как я могу исключить конкретных авторов из wp_list_authors Изменить тему на страницу или сообщение Использование admin-ajax предотвращает регулярную отправку php-формы Сколько времени требуется для утверждения нового плагина? PHP-версия или конфигурация, запрещающая работу скрипта Многопроцессор с пользовательским сайтом магазина для каждого поставщика Миграция настраиваемого php мы писали из functions.php в плагин, специфичный для сайта Правильный способ создания страницы администрирования без добавления ее в меню Каков наилучший способ получить сообщения из одного многосайтового блога в другой? Как отключить (или удалить) «Все сообщения, опубликованные и корзины» в сообщениях панели мониторинга Короткие коды не разрешены в ответе вызова AJAX

Тема реактора: запретить публикацию сообщений

Тема реактора построена на базе Zurb Foundation и здесь – я думаю, что это неплохо.

Тема, которую я заменяю, использовала выбранный образ в сообщениях или блоге, но не в самой записи. Реактор вызывает изображение в обоих. Я хочу попытаться изменить это, чтобы у меня мог быть выбранный образ на странице блога, а не в сообщении. Это вызывает проблему, потому что я обычно использую изображение в сообщении и использую его для страницы блога.

Тема Reactor использует множество включений, функций, крючков и все, что причудливо подходит, поэтому я нахожу это сложным. Я думаю, что я решил, что это призыв к показанному изображению:

function reactor_do_standard_thumbnail() { $link_titles = reactor_option('frontpage_link_titles', 0); if ( has_post_thumbnail() ) { ?> <div class="entry-thumbnail"> <?php if ( is_page_template('page-templates/front-page.php') && !$link_titles ) { the_post_thumbnail( 'thumb-150' ); } else { ?> <a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail( 'thumb-150' ); ?></a> <?php } ?> </div> <?php } } add_action('reactor_post_header', 'reactor_do_standard_thumbnail', 4); 

Полный код для этого здесь, на Git.

Правильно ли я полагаю, что этот бит кода – это то, что я делаю, что я думаю? Может ли кто-нибудь дать мне понять, как я изменяю это поведение?

благодаря

Solutions Collecting From Web of "Тема реактора: запретить публикацию сообщений"

Перезвони

Вот как «Реактор» перехватывает обратный вызов

 add_action( 'reactor_post_header', 'reactor_do_standard_thumbnail', 4 ); 

Backtrace

Сама функция зацепилась от того, где вы связаны

 ~/theme_root/library/inc/content/content-post.php 

но этот файл вызывается class Reactor . Этот класс / файл не включается во время основного обратного вызова, подключенного к after_setup_theme в файле functions.php с приоритетом 10 , но до этого без обратного вызова. И он сразу же создается:

 require locate_template('library/reactor.php'); new Reactor(); 

Когда класс получает экземпляр и __construct() или получает вызов, он перехватывает обратный вызов, который регистрирует обратный вызов для большого пальца по умолчанию на приоритете 14 в after_setup_theme … (FYI: в стиле хромого PHP 4).

 add_action('after_setup_theme', array( &$this, 'content' ), 14); 

Тогда метод content() делает не что иное, как включение другого файла:

 require_once locate_template('/library/inc/content/content-pages.php'); 

И этот файл фактически прикрепляет миниатюру по умолчанию здесь .

 add_action('reactor_post_header', 'reactor_do_standard_thumbnail', 4); 

обмен

Теперь просто добавьте следующее в файл functions.php CHILD THEME .

 /** * Remove the original callback, add in a new one */ add_action( 'after_setup_theme', 'wpse119843RemoveStandardThumbs', 20 ); function wpse119843RemoveStandardThumbs() { // Removes it for posts AND pages. If you only want posts, use is_single() if ( is_singular() ) remove_action( 'reactor_post_header', 'reactor_do_standard_thumbnail', 4 ); add_action( 'reactor_post_header', 'wpse119843AddCustomThumbs' ); } /** * The callback that formats the new output */ function wpse119843AddCustomThumbs() { $link_titles = reactor_option( 'frontpage_link_titles', 0 ); if ( has_post_thumbnail() ) { ?> // REFACTOR REACTOR <?php } } 

ЗАМЕТКА

Чтобы сохранить изменения, используйте дочернюю тему . Когда вы поближе познакомитесь с сайтом, вы увидите, что его уже существует .

Вот что это взломали:

 function reactor_do_standard_thumbnail() { $link_titles = reactor_option('frontpage_link_titles', 0); if ( has_post_thumbnail() ) { ?> <div class="entry-thumbnail small-4 column"> <?php if ( is_page_template('page-templates/front-page.php') && !$link_titles ) { the_post_thumbnail( 'thumb-150' ); ?> <?php } elseif ( is_single()){ ;?> <?php } else { ;?> <a href="<?php the_permalink(); ?>" rel="bookmark" title="<?php the_title_attribute(); ?>"><?php the_post_thumbnail('thumb-150'); ?></a> <?php } ?> </div> <?php } } add_action('reactor_post_header', 'reactor_do_standard_thumbnail', 4);