Intereting Posts
Все в одном запросе типа персонализированного календаря не работают должным образом Подключаемый крючок не работает в конкретной установке WordPress – как устранить неполадки? как узнать, почему ссылки указывают на мой старый домен Есть ли способ указать дополнительный класс для публикации или страницы без заголовка? Почему HTTP-заголовок предоставляет 404, пока сайт находится в сети? удалить встроенные скрипты из the_content (), созданного плагинами? Как определить количество записей в нескольких категориях Можно ли установить динамические идентификаторы JJ NextGen JQuery Carousel? Как я могу отображать элементы show / hide при регистрации пользователя? Печать настраиваемых стилей с помощью API настроек printf и _n в этом примере? Получить конечный пункт назначения после перенаправления WP_Http (WordPress) дата изменения значения персонализированного поля в unix timestamp PayPal Express Checkout дает 10525 сообщение об ошибке Сообщения с по меньшей мере 3 тегами списка тегов

Добавить фильтр в теги html, атрибуты для определенной функции в wordpress

Название немного: S sorry 🙂 Например, у нас есть функция paginate links, которая выводит html что-то вроде этого

<span class='page-numbers current'>some number</span> 

Как я могу отфильтровать это, чтобы удалить этот диапазон, класс, чтобы применить мои собственные html-теги, стили, tnx заранее. Я просто хочу применить свои собственные стили и html-теги, возможно ли это?

Solutions Collecting From Web of "Добавить фильтр в теги html, атрибуты для определенной функции в wordpress"

Используйте настраиваемую функцию разбиения на страницы:

мой источник:

 function fb_paging_bar( $args = array() ) { $defaults = array( 'range' => 4, 'custom_query' => FALSE, 'previous_string' => __( '&laquo;&laquo;&laquo;', FB_GREYFOTO_TEXTDOMAIN ), 'next_string' => __( '&raquo;&raquo;&raquo;', FB_GREYFOTO_TEXTDOMAIN ), 'view_fp' => TRUE, 'view_lp' => TRUE, 'before_output' => '<div class="postlink">', 'after_output' => '</div>' ); $args = wp_parse_args( $args, apply_filters( 'fb_paging_bar_defaults', $defaults ) ); $args['range'] = (int) $args['range'] - 1; if ( !$args['custom_query'] ) $args['custom_query'] = @$GLOBALS['wp_query']; $count = (int) $args['custom_query']->max_num_pages; $page = intval( get_query_var( 'paged' ) ); $ceil = ceil( $args['range'] / 2 ); if ( $count <= 1 ) return FALSE; if ( !$page ) $page = 1; if ( $count > $args['range'] ) { if ( $page <= $args['range'] ) { $min = 1; $max = $args['range'] + 1; } elseif ( $page >= ($count - $ceil) ) { $min = $count - $args['range']; $max = $count; } elseif ( $page >= $args['range'] && $page < ($count - $ceil) ) { $min = $page - $ceil; $max = $page + $ceil; } } else { $min = 1; $max = $count; } $echo = ''; $previous = intval($page) - 1; $previous = esc_attr( get_pagenum_link($previous) ); if ( $previous && (1 != $page) ) $echo .= '<a href="' . $previous . '" title="' . __( 'previous', FB_GREYFOTO_TEXTDOMAIN) . '">' . $args['previous_string'] . '</a>'; $firstpage = esc_attr( get_pagenum_link(1) ); if ( $args['view_fp'] && $firstpage && (1 != $page) ) $echo .= '<a href="' . $firstpage . '">' . __( 'First', FB_GREYFOTO_TEXTDOMAIN ) . '</a>'; if ( !empty($min) && !empty($max) ) { for( $i = $min; $i <= $max; $i++ ) { if ($page == $i) { $echo .= '<span class="active">' . str_pad( (int)$i, 2, '0', STR_PAD_LEFT ) . '</span>'; } else { $echo .= sprintf( '<a href="%s">%002d</a>', esc_attr( get_pagenum_link($i) ), $i ); } } } if ($args['view_lp']) { $lastpage = esc_attr( get_pagenum_link($count) ); if ( $lastpage && ($count != $page) ) { $count = str_pad( (int)$count, 2, '0', STR_PAD_LEFT ); $echo .= '<a href="' . $lastpage . '">' . __( 'Last', FB_GREYFOTO_TEXTDOMAIN ) . '(' . $count . ')' . '</a>'; } } $next = intval($page) + 1; $next = esc_attr( get_pagenum_link($next) ); if ($next && ($count != $page) ) $echo .= '<a href="' . $next . '" title="' . __( 'next', FB_GREYFOTO_TEXTDOMAIN) . '">' . $args['next_string'] . '</a>'; if ( isset($echo) ) echo $args['before_output'] . $echo . $args['after_output']; } 

Кроме того, вы можете подключить функцию к пользовательскому формату и переменным.

также пример:

 function change_fb_paging_bar_defaults($args) { $args['previous_string'] = ''; // empty string $args['next_string'] = ''; return $args; } add_filter('fb_paging_bar_defaults', 'change_fb_paging_bar_defaults'); 

в вашем шаблоне используйте функцию:

 fb_paging_bar(); 

Я думаю, что лучший способ сделать это – скопировать эту функцию (wp-includes / general-template.php, строка 1943) и создать свою собственную с помощью разметки, которую вы хотите.

Существует несколько возможных способов настройки разметки, это зависит от конкретной функции:

  • функция поиска на более глубоком уровне, которая используется для извлечения данных, использует ее с собственной разметкой;
  • проверить, прошел ли выход через фильтр, использовать фильтр для замены;
  • разметка создается с помощью класса walker, создает собственный ходок и передает его функции.

Есть, вероятно, больше способов, но я думаю, что они распространены.

В целом я думаю, что разметка WP разумно применима и семантична. В большинстве случаев я слишком беспорядок с ним – это вещи JS, требующие очень специфической разметки.

Считаете ли вы, что может быть более последовательным и жизнеспособным, чтобы сделать CSS подходящей общей разметкой?