Intereting Posts
Пользовательские условия в запросе wp Перенаправление на странице администратора Как wp_enqueue_script с html? Локальные установки WordPress не проверяют проверку контрольной суммы wp-cli и как исправить эту проблему. Отправить учетные данные для входа с комментариями Категории в интерфейсе администратора: могут ли они быть разборными? Как я могу отладить, что не так? Избранные изображения перестали отображаться Добавление Media перестало работать в интерфейсе с обновления 4.5 Проблемы с перенаправлением на «красивые» постоянные ссылки (wordpress в подкаталоге) Должна ли быть косая черта в постоянной ссылке? Ошибки отчетности в плагине коротких кодов проблемы с перенаправлением многостраничного текстового пресса и наличие разных файлов роботов Показать сообщения категории на странице Отладка «Объект класса WP_Query не может быть преобразован в ошибку int» Результаты meta_query не совпадают с пробелами и без них

Заменить текст в заголовке

В строке, отображаемой <?php the_title(); ?> <?php the_title(); ?> Мне нужно заменить все символы & and .

Вот код, который я пробовал без успеха:

 <?php $wptitle = the_title(); $wptitle = str_replace('&', 'and', $wptitle);?><?php echo $wptitle; ?> 

Полный код для замены:

 <h2><a href="<?php if(get_post_meta($post->ID, 'links_link_custom', true)): ?><?php echo get_post_meta($post->ID, 'links_link_custom', true) ?><?php else: ?><?php the_permalink(); ?><?php endif; ?>"><?php the_title(); ?></a></h2> 

Solutions Collecting From Web of "Заменить текст в заголовке"

Прежде всего, сначала очистите свой код:

 <?php $wptitle = the_title(); $wptitle = str_replace('&', 'and', $wptitle);?><?php echo $wptitle; ?> 

Позволяет удалить спам PHP-тегов и поместить вещи в хорошие чистые строки:

 <?php $wptitle = the_title(); $wptitle = str_replace('&', 'and', $wptitle); echo $wptitle; ?> 

Теперь, если мы рассмотрим проблему, the_title , эта функция выводит заголовок и ничего не возвращает. Это означает, что $wptitle пуст, поэтому ваша замена строки ничего не делает.

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

Однако быстрый google для the_title вызывает код как первую запись вместе со связанной функцией get_the_title которая решит вашу проблему. Чтение документации говорит, что это аргументы, которые выполняет эта функция:

 <?php the_title( $before, $after, $echo ); ?> 

Таким образом, вы можете изменить $wptitle = the_title(); к этому:

 $wptitle = the_title( '','',false ); 

Или это:

 $wptitle = get_the_title(); 

Существует также гораздо лучший метод, который можно использовать с фильтрами:

 add_filter( 'the_title', 'drabello_swap_ampersands' ); function drabello_swap_ampersands( $old_title ) { $new_title = // do the replacement.. return $new_title; }